[javascript] 객체의 속성 이름 얻기

JavaScript에서 객체를 반복하는 방법이 있는지 궁금합니다.

for(var i in myObject) {
    // ...
}

그러나 이와 같이 각 속성의 이름을 얻으십시오.

for(var i in myObject) {
    separateObj[myObject[i].name] = myObject[i];
}

Google에서 이와 비슷한 것을 찾을 수 없습니다. 그들은 변수의 이름을 그들과 함께 전달한다고 말하지만 이것은 내가 달성하려는 것에 대한 옵션이 아닙니다.

도움을 주셔서 감사합니다.



답변

Object.keys ()를 사용하십시오 .

var myObject = { a: 'c', b: 'a', c: 'b' };
var keyNames = Object.keys(myObject);
console.log(keyNames); // Outputs ["a","b","c"]

Object.keys() 입력 객체에 속하는 속성 이름 배열을 제공합니다.


답변

i 이름입니다.

for(var name in obj) {
    alert(name);
    var value = obj[name];
    alert(value);
}

그래서 당신은 할 수 있습니다 :

seperateObj[i] = myObject[i];


답변

면책 조항
나는 “객체가 부착 된 속성 이름을 알 수 있습니까?”라는 질문을 오해했지만 일부 사람들은 그것을 찾는 동안 여기에 올 수 있기 때문에 답을 남기기로 결정했습니다.


아니요, 객체를 여러 속성에 연결할 수 있으므로 이름을 알 수 없습니다.

var obj = {a:1};
var a = {x: obj, y: obj}

obj의 이름은 무엇입니까?

for 루프에서 속성 이름을 원하지 않습니까?

for (var propName in obj) {
  console.log("Iterating through prop with name", propName, " its value is ", obj[propName])
}


답변

객체를 쉽게 반복 할 수 있습니다

예 : 객체가 var a = {a : ‘apple’, b : ‘ball’, c : ‘cat’, d : ‘doll’, e : ‘elephant’} 인 경우;

Object.keys(a).forEach(key => {
   console.log(key) // returns the keys in an object
   console.log(a[key])  // returns the appropriate value 
})


답변

위치별로 객체 속성에 직접 액세스하려면 … 일반적으로 속성 [0]에 유용합니다 … 그래서 추가 정보에 대한 정보를 보유하거나 첫 번째로드 된 외부 모듈의 node.js ‘require.cache [0]’에 등

Object.keys( myObject )[ 0 ]
Object.keys( myObject )[ 1 ]
...
Object.keys( myObject )[ n ]


답변

“Object.keys (obj)”외에, 우리는 매우 간단한 “for … in”루프를 가지고 있는데, 이것은 객체의 열거 가능한 속성 이름을 반복합니다.

const obj = {"fName":"John","lName":"Doe"};

for (const key in obj) {
    //This will give key
      console.log(key);
    //This will give value
    console.log(obj[key]);

}


답변

모국어가 무엇인지에 따라 객체의 속성 또는 “배열 키”또는 “배열 인덱스”를 가져 오려면 ….. Object.keys () 메서드를 사용하십시오.

중요 : 이것은 “현대 브라우저”와만 호환됩니다 :

따라서 객체가 호출되면 myObject …

var c = 0;
for(c in myObject) {
    console.log(Object.keys(myObject[c]));
}

사람! 이것은 최신 파이어 폭스와 ie11 및 크롬에서 확실히 작동합니다 …

다음은 MDN https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/keys의 설명서입니다.