Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/476.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 array.find()仅在第一个实例中找到_Javascript - Fatal编程技术网

Javascript array.find()仅在第一个实例中找到

Javascript array.find()仅在第一个实例中找到,javascript,Javascript,我有以下对象数组: var data = {}; data.type = { "types": [{ "testA": { "testVar": "abc", "testContent": "contentA" } }, { "testB": { "testVar": "def", "testContent": "contentB"

我有以下对象数组:

var data = {};

data.type = {
    "types": [{
        "testA": {
            "testVar": "abc",
            "testContent": "contentA"
        }
    }, {
        "testB": {
            "testVar": "def",
            "testContent": "contentB"
        }
    }]
};
我试图通过搜索父对象和同级对象来查找
testContent
的值:

/* within the data, find content where parent is testA and sibling testVar is "abc" */
var findSet = data.type.types.find(function(entry) {
    return entry['testA'].testVar === "abc";
});

console.log(findSet['testA'].testContent); /* returns string "contentA" as expected */
这对第一个对象很有效,但找不到下一个对象,出现错误:

无法读取未定义的属性“testVar”

我怎么才能找到需要的东西

var data={};
数据类型={
“类型”:[{
“种皮”:{
“testVar”:“abc”,
“testContent”:“contentA”
}
}, {
“测试B”:{
“testVar”:“def”,
“testContent”:“contentB”
}
}]
};
var findSet=data.type.types.find(函数(条目){
返回条目['testA']&条目['testA'].testVar==“abc”;
});
log(findSet['testA'].testContent);
var findSet=data.type.types.find(函数(条目){
返回条目['testB']&&entry['testB'].testVar==“def”;/*无法读取未定义的属性“testVar”*/
});

log(findSet['testB'].testContent)
Hmmm-我认为
.find()
的全部目的就是不必这样做-无论如何,非常感谢
var findSet = data.type.types.find(function(entry) {
    return entry['testB'].testVar === "def"; /* Cannot read property 'testVar' of undefined */
});

console.log(findSet['testB'].testContent);