2020. 7. 11. 12:05ㆍRetrospection/Sprint
7. 객체의 키속성값의 모음이 다른 객체가 될수있음 .
function addFullNameProperty(obj) {
//'firstName lastname'반환 해야함
obj.fullName = obj.firstName + ' ' + obj.lastName
}
//obj[fullName] = obj[firstName]+ ' ' + obj[lastName] <= 이걸로 했을때는 테스트 통과를 못했고 key 값이 notdefined 라고 나왔었다. 브라켓 노테이션을 사용할때는 property_name으로 문자열이나 Symbol을 사용할 수 있다.
문자열은 유효한 식별자가 아니어도 괜찮음.여기서는 obj[firstName] 이라고 할때 firstName 이라는 변수값을 property 삼아서 다른값들이 들어가게 된다. 그 이유때문에 property 이름이 정해진 7번문제의 경우 브라켓노테이션으로 했을때 테스트 통과가 안되는 것 이다.
//아마도 그 이유는 dot notation 은 유효한 식별자가 들어가기 때문 . (예를들어 obj.fullName 이 있다고 할때 fullName 아라는 이름을 가진 키값이 설정되는것.)
/
8. 객체를 탐색하는 반복문인 for ...in 구문의 사용
function removeNumbersLargerThan(num, obj) {
//for..in 구문 이용하기
//for ( property in obj)
//num 보다 큰 모든 숫자의 속성을 제거
for(prop in obj){
if (obj[prop] > num){
delete obj[prop]
}
}
}
9. for ..in 구문의 사용과 객체에서의 연산자 사용
function removeOddValues(obj) {
//홀수인 속성값 제거
//for .. in 사용
for ( prop in obj){
if(obj[prop] % 2 === 1){
delete obj[prop];
}
}
}
10.
function countNumberOfKeys(obj) {
// for ..in 반복문 사용
//객체 안에 있는 속성들의 갯수 세기
// let count = 0 해서 1씩 증가시켜보자.
let count = 0 ;
for(prop in obj){
count = count + 1
}
return count ;
}
- obj.keys(objName).length 를 사용하여 오브젝트의 프로퍼티 갯수를 알 수 있다.
function countNumberOfKeys(obj) {
return Object.keys(obj).length;
}
https://stackoverflow.com/questions/5223/length-of-a-javascript-object
Length of a JavaScript object
I have a JavaScript object. Is there a built-in or accepted best practice way to get the length of this object? const myObject = new Object(); myObject["firstname"] = "Gareth";
stackoverflow.com
'Retrospection > Sprint' 카테고리의 다른 글
5. 객체와 타입 1~3 (0) | 2020.07.13 |
---|---|
4. 객체 11~13 (0) | 2020.07.12 |
4. 객체 4 ~ 6 (0) | 2020.07.07 |
4. 객체 1~ 3 (0) | 2020.07.07 |
윈도우 사이즈 (0) | 2020.07.06 |