Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/431.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何检查数组中是否存在特定的对象元素(而不是属性)?_Javascript - Fatal编程技术网

Javascript 如何检查数组中是否存在特定的对象元素(而不是属性)?

Javascript 如何检查数组中是否存在特定的对象元素(而不是属性)?,javascript,Javascript,我尝试使用.includes()方法,但无法使其工作 data = [{ "Global Quote": { "01. symbol": "TSLA", "02. open": "256.7100", "03. high": "260.4800", "04. low": "254.5100", "05. price": "260.1700", "06. volume": "4967930",

我尝试使用.includes()方法,但无法使其工作

data = [{
    "Global Quote": {
        "01. symbol": "TSLA",
        "02. open": "256.7100",
        "03. high": "260.4800",
        "04. low": "254.5100",
        "05. price": "260.1700",
        "06. volume": "4967930",
        "07. latest trading day": "2019-07-23",
        "08. previous close": "255.6800",
        "09. change": "4.4900",
        "10. change percent": "1.7561%"
    }
}]

data.includes("Global Quote") ? console.log("found") : console.log("not 
found");

控制台每次都记录“未找到”…

如果要检查数组是否至少包含一个具有特定属性的对象,可以使用
some

找到具有属性的示例:

var数据=[{
“全球报价”:{}
}]

数据。一些(o=>o中的“全局引用”?console.log(“找到”):console.log(“未找到”)如果要检查数组是否至少包含一个具有特定属性的对象,可以使用
some

找到具有属性的示例:

var数据=[{
“全球报价”:{}
}]

数据。一些(o=>o中的“全局引用”?console.log(“找到”):console.log(“未找到”)检查带有
数据的属性时,对象中的级别不正确。包括(…)

您必须更深一层,并使用方法检查属性

您的代码将如下所示:

const数据=[{
“全球报价”:{
“01.符号”:“TSLA”,
“02.打开”:“256.7100”,
“03.高”:“260.4800”,
“04.低”:“254.5100”,
“05.价格”:“260.1700”,
“06.卷”:“4967930”,
“07.最近交易日”:“2019-07-23”,
“08.上次收盘”:“255.6800”,
“09.变更”:“4.4900”,
“10.变动百分比”:“1.7561%”
}
}]
数据[0]。hasOwnProperty('Global Quote')?console.log('found'):console.log('notfound');

检查带有
数据的属性时,对象中的级别不正确。包括(…)

您必须更深一层,并使用方法检查属性

您的代码将如下所示:

const数据=[{
“全球报价”:{
“01.符号”:“TSLA”,
“02.打开”:“256.7100”,
“03.高”:“260.4800”,
“04.低”:“254.5100”,
“05.价格”:“260.1700”,
“06.卷”:“4967930”,
“07.最近交易日”:“2019-07-23”,
“08.上次收盘”:“255.6800”,
“09.变更”:“4.4900”,
“10.变动百分比”:“1.7561%”
}
}]
数据[0]。hasOwnProperty('Global Quote')?console.log('found'):console.log('notfound');

假设在该数组中有多个对象可以使用

const数据=[{
“全球报价”:{
“01.符号”:“TSLA”,
“02.打开”:“256.7100”,
“03.高”:“260.4800”,
“04.低”:“254.5100”,
“05.价格”:“260.1700”,
“06.卷”:“4967930”,
“07.最近交易日”:“2019-07-23”,
“08.上次收盘”:“255.6800”,
“09.变更”:“4.4900”,
“10.变动百分比”:“1.7561%”
}
}];
功能findKey(arr,键){
返回arr.some(obj=>Object.keys(obj)[0]==key);
}
log(findKey(数据,“全局测试”);

log(findKey(数据,'Global Quote'))假设该数组中有多个可以使用的对象

const数据=[{
“全球报价”:{
“01.符号”:“TSLA”,
“02.打开”:“256.7100”,
“03.高”:“260.4800”,
“04.低”:“254.5100”,
“05.价格”:“260.1700”,
“06.卷”:“4967930”,
“07.最近交易日”:“2019-07-23”,
“08.上次收盘”:“255.6800”,
“09.变更”:“4.4900”,
“10.变动百分比”:“1.7561%”
}
}];
功能findKey(arr,键){
返回arr.some(obj=>Object.keys(obj)[0]==key);
}
log(findKey(数据,“全局测试”);

log(findKey(数据,'Global Quote'))它将显示未找到,因为您正在将
字符串
对象
进行比较。它将显示未找到,因为您正在将
字符串
对象
进行比较。