JavaScript 개체: 3부 in 연산자 및 for...in 문
먼저 연산자에서 찾고 있는 키가 객체에 있는지 아니면 프로토타입 체인에 있는지 찾는 데 사용됩니다. 예를 들어 자세히 살펴보겠습니다.
in 연산자의 구문은
key in object
입니다. key는 속성 키 이름을 나타내는 문자열 또는 기호이고, object는 in 연산자를 실행하는 개체 이름을 나타냅니다.let admin = {
fname: "kiran",
lname: "raj",
email: "[email protected]",
admin: true,
greet: function(){
console.log(`Hello ${this. name}`);
}
}
console.log("lname" in admin); // Output: true
console.log("fn" in admin); // Output: false
위의 코드에는 몇 가지 속성과 메서드가 있는 개체 admin이 포함되어 있습니다. 마지막 두 줄은 in 연산자가 작동하는 모습을 보여줍니다.
"lname" in admin
코드에서 lname이 admin 개체의 키인지 확인하고 있습니다. object에 lname이 있는 속성이 있기 때문에 코드는 true를 반환합니다. 확인"fn" in admin
하면 admin 개체에 fn이라는 이름의 키가 없기 때문에 false를 반환합니다. 정수 값을 제외하고 키를 따옴표로 묶는 것을 기억하십시오. 코드console.log("greet" in admin)
는 콘솔에서 true로 인쇄됩니다.예를 하나 더 보자
let name = {
fullname :{
fname: "kiran",
lname: "raj",
},
email: "[email protected]",
}
console.log("fname" in name); // Output : false
console.log("fname" in name.fullname); // Output : true
이제 코드 조각을 사용하여 for..in 문을 살펴보겠습니다. 그 전에 for..in 문은 문자열이거나 문자열로 변환될 수 있는 키로 속성을 반복하며 기호 키는 무시됩니다.
let admin = {
fname: "kiran",
lname: "raj",
email: "[email protected]",
admin: true,
greet: function(){
console.log(`Hello ${this. name}`);
}
}
for (key in admin){
console.log(`key is ${key} and value is ${admin[key]}`);
}
산출
key is fname and value is kiran
key is lname and value is raj
key is email and value is kiranr@gmail.com
key is admin and value is true
key is greet and value is function(){
console.log(`Hello ${this. name}`); }
여기에서 for..in 문을 사용하여 개체 관리자에게 for..in 문의 구문은 다음과 같습니다.
for (variable in object)
statement
변수는 각 반복에서 다른 속성 키 이름을 가져옵니다. 이 경우에는
fname, lname, email, admin and greet
입니다. 객체는 반복해야 하는 객체 이름을 나타냅니다. 문은 각 반복에서 실행됩니다.기억하십시오: for...in 문은 객체의 열거 가능하고 Symbol이 아닌 속성에 대해서만 반복합니다. 또한 상속된 열거 가능한 속성을 반복합니다.
Reference
이 문제에 관하여(JavaScript 개체: 3부 in 연산자 및 for...in 문), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/kiranrajvjd/javascript-objects-part-3-in-operator-and-for-in-statement-e8d텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)