function getProperty(obj, property) {
return obj[property];
}
function addProperty(obj, property) {
return obj[property] = true;
}
function addPropertyAndValue(obj, property, value) {
return obj[property] = value;
}
function addObjectProperty(obj1, property, obj2) {
return obj1[property] = obj2;
}
function removeProperty(obj, property) {
return delete obj[property];
}
function removeNumberValues(obj) {
for(let i in obj){
if (typeof obj[i] === 'number'){
delete obj[i];
}
}
return obj;
}
function removeArrayValues(obj) {
for( let i in obj ){
if( Array.isArray(obj[i]) === true ){
delete obj[i];
}
}
return obj;
}
function removeOddValues(obj) {
for(let i in obj){
if ( obj[i] % 2 === 1 && typeof obj[i] === 'number'){
delete obj[i];
}
}
return obj;
}
function isPersonOldEnoughToVote(person) {
for(let i in person){
if(person[i] >= 18){
return true;
}
}
return false;
}
function addFullNameProperty(obj) {
obj['fullName'] = obj['firstName'] + ' ' + obj['lastName'];
}
function removeNumbersLargerThan(num, obj) {
for(let i in obj){
if(obj[i] > num && typeof obj[i] === 'number'){
delete obj[i];
}
}
}
function countNumberOfKeys(obj) {
let count = 0;
for(let i in obj){
count++
}
return count;
}
객체를 입력받아 키, 값 쌍을 표현하는 문자열을 리턴
각 문자열은 한 줄에 키: 값 형태로 구성되며, 각 문자열 끝에는 줄바꿈 문자가 포함되어야 합니다
string 타입을 리턴
입출력 예시
const obj = { name: 'Steve', age: 13, gender: 'Male' };
let output = printObject(obj);
console.log(output); // -->
/*
name: Steve
age: 13
gender: Male
*/
function printObject(obj) {
let result ='';
for(let i in obj){
result += `${i}: ${obj[i]}\n`;
}
return result;
}
function getElementOfArrayProperty(obj, key, index) {
let arrProperty = obj[key];
for(let i in arrProperty){
if(Array.isArray(arrProperty) === true){
return arrProperty[index];
}
}
return undefined;
}
function select(arr, obj) {
// 배열 arr와 객체 obj를 입력받아서
// arr의 각 요소들을 obj의 키로 했을 때
// 그 값을 추출하여 만든 새로운 객체 리턴
let a = {}
for(let i of arr){
for(let j in obj){
if ( i === j){
a[j] = obj[j]
}
}
}
return a;
}