Programing

사전 객체의 길이 확인

lottogame 2020. 5. 25. 08:06
반응형

사전 객체의 길이 확인


여기서 길이를 확인하려고합니다. 시도 횟수. 내가 놓친 것이 있습니까?

var dNames = {}; 
dNames = GetAllNames();

for (var i = 0, l = dName.length; i < l; i++) 
{
        alert("Name: " + dName[i].name);
}

dNames는 이름 / 값 쌍을 보유합니다. dNames에는 해당 객체에 값이 있지만 여전히 완전히 건너 뛰고 있으며 dName.length조차도 경고 할 때이 방법이 아닙니다 ... 그래서 확실하지 않습니다. 웹에서 찾았습니다. 이것에서 아무것도 찾을 수 없습니다.


내가하는 일은 Object.keys ()를 사용하여 모든 키 목록을 반환 한 다음 그 길이를 얻는 것입니다

Object.keys(dictionary).length

var c = {'a':'A', 'b':'B', 'c':'C'};
var count = 0;
for (var i in c) {
   if (c.hasOwnProperty(i)) count++;
}

alert(count);

이 질문은 혼란 스럽다. 일반 객체 {}length자신이 가진 사용자 정의 객체를 생성하는 자체 함수 생성자를 만들지 않는 속성 이 없습니다 (이 경우 지정하지 않음).

즉, 설정되지 않았으므로 for..in오브젝트 명령문으로 "길이"를 가져 와서 length카운터를 증가 시켜야합니다 .

당신이 왜 필요한지 혼란 스럽습니다 length. 0객체 를 수동으로 설정 하고 있습니까 , 아니면 사용자 정의 문자열 키를 사용하고 있습니까? obj['foo'] = 'bar';. 후자가 다시, 왜 길이가 필요한가?

편집 # 1 : 왜 이렇게 할 수 없습니까?

list = [ {name:'john'}, {name:'bob'} ];

그런 다음 목록을 반복합니까? length이미 설정되어 있습니다.


사전에서 키를 세고 표시합니다 (콘솔에서 실행).

o=[];count=0; for (i in topicNames) { ++count; o.push(count+": "+ i) } o.join("\n")

샘플 출력 :

"1: Phase-out Left-hand
2: Define All Top Level Taxonomies But Processes
3: 987
4: 16:00
5: Identify suppliers"

단순 카운트 기능 :

function size_dict(d){c=0; for (i in d) ++c; return c}

참고 URL : https://stackoverflow.com/questions/3337367/checking-length-of-dictionary-object

반응형