Javascript 如何检查数组中是否存在特定的对象元素(而不是属性)?
我尝试使用.includes()方法,但无法使其工作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",
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'))代码>它将显示未找到,因为您正在将字符串
与对象
进行比较。它将显示未找到,因为您正在将字符串
与对象
进行比较。