パートナー-オブジェクト
対象12号
対象19号
속성의 개수
function countNumberOfKeys(obj) {
return Object.keys(obj).length;
}
// Object.keys()는 배열에 key값만 담아준다.
別の解釈function countNumberOfKeys(obj) {
let count = 0;
for(let prop in obj) {
obj[prop];
count++;
}
return count;
}
対象13号function printObject(obj) {
let result = '';
for(let prop in obj) {
result = result + prop + ': ' + obj[prop] + '\n'
}
return result;
}
// obj = { prop: obj[prop] };
対象15号function select(arr, obj) {
let result = {}; // 입력받은 객체를 수정하지 않아야 합니다.
for(let i in arr) { // in으로 해야 index가 나옴.
for(let prop in obj) {
if(arr[i] === prop) {
result[prop] = obj[prop];
}
}
}
return result;
}
対象19号
function extend(obj1, obj2) {
for(let prop in obj2)
if(!obj1[prop]) {
obj1[prop] = obj2[prop];
}
}
// obj2의 속성이 obj에 없다면
対象20号function countAllCharacters(str) {
let obj = {};
for(let i = 0; i < str.length; i++) {
if(obj[str[i]] === undefined) { // if(!(obj[str[i]]))
obj[str[i]] = 0;
}
obj[str[i]]++;
}
return obj;
}
対象21号function mostFrequentCharacter(str) {
let obj = { mostCount: 0, mostFrequent: '' };
for (let i = 0; i < str.length; i++) {
if (str[i] === ' ') {
continue;
}
if (obj[str[i]] === undefined) {
obj[str[i]] = 0;
}
obj[str[i]] += 1;
if (obj[str[i]] > obj['mostCount']) {
obj['mostCount'] = obj[str[i]];
obj['mostFrequent'] = str[i];
}
}
return obj['mostFrequent'];
}
// 가장 많이 반복되는 문자가 다수일 경우, 가장 먼저 해당 횟수에 도달한 문자를 리턴
Reference
この問題について(パートナー-オブジェクト), 我々は、より多くの情報をここで見つけました https://velog.io/@soheey/코플릿-객체テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol