Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/372.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.filter后如何获取多个值?_Javascript_Arrays_Filter - Fatal编程技术网

Javascript 使用Array.filter后如何获取多个值?

Javascript 使用Array.filter后如何获取多个值?,javascript,arrays,filter,Javascript,Arrays,Filter,我已经成功地过滤了我的数组,因此只显示包含字符串“eastern”的对象 // Empty array + object that is pushed onto array following Btn click var dataSet = []; dataObj = {Course: courseSelect.value, Score: scoreText.value, Pars: parsText.value, Birdies: birdiesText.value}; dataSet.

我已经成功地过滤了我的数组,因此只显示包含字符串“eastern”的对象

// Empty array + object that is pushed onto array following Btn click

var dataSet = [];

dataObj = {Course: courseSelect.value, Score: scoreText.value, Pars: parsText.value, Birdies: birdiesText.value};

dataSet.push(dataObj);

// Filter

findVal = dataSet.filter(findVal => findVal.Course === 'eastern');
现在唯一的问题是,如果我想通过使用
console.log(findVal.Score)
将Score值从该对象中分离出来,它将返回undefined。我希望它能从过滤数组中的每个对象返回每个分数值,但事实并非如此


如何克服这个问题?

既然
findVal
它是一个数组,您应该结合使用
map
方法和解构方法,以便从数组中获取每个项的
分数
属性

findVal = dataSet
           .filter(findVal => findVal.Course === 'eastern')
           .map(({Score}) => Score);

我看不到任何阵列。
dataSet
看起来怎么样?finalVal不是数组吗?您需要访问您发布的索引
dataObj
,但是
.filter()
代码涉及一种称为
数据集的内容。请注意,
.filter()
返回一个数组,因此当然在该数组上没有直接的
.Score
属性。您有
//array
上面的内容显然是一个对象对不起,大家,我的帖子出错了。我已经对它进行了相应的编辑。我认为在这种情况下,解构是没有用的,相反,它会使代码更脏
.map(x=>x.Score)更干净。