如何检查一个键是否存在于 JavaScript 对象中

在这个片段中,我们将指导我们检查 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 对象包含在语言的方方面面,因此我们需要在开始学习时立即学习它们。

对象是用数字括号 {…} 创建的,并且应该有一个属性列表。
属性被称为“键:值”,其中键或者属性名称是一个字符串,值可以是任何值。

日期:2020-06-02 22:16:09 来源:oir作者:oir