在这个片段中,我们将指导我们检查 JavaScript 对象中是否存在键。
在检查对象中是否存在键之前,有必要创建对象,该对象将存储值。
要创建该对象,我们需要执行以下操作:
let personSalary = {
engineer: 2500,
programmer: 4000,
accountant: 2000,
lawyer: 3000
};
console.log(personSalary);
为了进行后续操作,我们可以将上面给出的代码复制并粘贴到浏览器的控制台中。
有几种方法可以检查对象中是否存在键。
第一个是使用key。
如果我们将键传递给对象,它会返回值(如果存在)。
然后你可以检查你是否有一个值。
它显示在下面的示例中:
let personSalary = {
engineer: 2500,
programmer: 4000,
accountant: 2000,
lawyer: 3000
};
console.log(personSalary["programmer"]);
因此,当我们将键“programmer”传递给对象时,它会返回匹配的值 2.
除了查找值外,我们可能还希望检查对象中是否存在给定的键。
该对象可能只有唯一键,我们可能希望在添加键之前检查它是否已经存在。
我们可以使用 in 运算符来完成,如下所示:
let valueForKey = "programmer" in personSalary;
因此,上面的代码将 true 存储在变量 valueForKey 中。
此外,我们可以在 personSalary 中键入“programmer”到控制台并注意它再次打印 true。
但最好确保控制台中也有一个 personSalary。
现在,让我们用代码查看另一个选项:
let learnLanguage = {
javaScript: true,
python: false,
cSharp: true,
java: true
};
let javaScriptExists = "javaScript" in learnLanguage;
console.log(javaScriptExists);
console.log("Learn Javascript? " + (learnLanguage["javascript"] ? "Yes" : "No"));
如果要查看 JavaScript 对象中的所有可枚举键,可以使用 Object.keys() 方法,其外观和工作方式如下:
let obj = {
objName: "animal",
"data type": typeof this,
logName: function () {
console.log(this.objName);
},
logDataType: function () {
console.log(this["data type"]);
}
};
obj.logName(); //animal
obj.logDataType(); //object
要获取 obj 中的所有可枚举键,只需将 obj 传递给 Object.keys() 方法。
结果如下:
let obj = {
objName: "animal",
"data type": typeof this,
logName: function () {
console.log(this.objName);
},
logDataType: function () {
console.log(this["data type"]);
}
};
let x = Object.keys(obj);
console.log(x); //["name", "data type", "logName", "logDataType"]
用 JavaScript 描述对象
在 JavaScript 中,对象用于存储各种数据和更复杂实体的键控集合。
JavaScript 对象包含在语言的方方面面,因此我们需要在开始学习时立即学习它们。
对象是用数字括号 {…} 创建的,并且应该有一个属性列表。
属性被称为“键:值”,其中键或者属性名称是一个字符串,值可以是任何值。
