js 取出某个对象数组中符合某个条件的值
时间: 2023-06-09 20:06:56 浏览: 111
您好,关于您的问题,我给出以下 JavaScript 代码示例可以实现您的需求:
```javascript
let objArr = [{id: 1, name: 'Alice'}, {id: 2, name: 'Bob'}, {id: 3, name: 'Charlie'}];
let targetValue = 'Bob';
let filteredArr = objArr.filter(function(obj) {
return obj.name === targetValue;
});
let result = filteredArr.length ? filteredArr[0].id : null;
console.log(result); // 输出 2
```
以上示例代码中,我首先定义了一个对象数组 objArr,其中每个元素都拥有一个 id 和 name 属性。接着我定义了一个目标值 targetValue,用于指定筛选条件。然后我使用数组的 filter 方法筛选出符合条件的对象,最后从这个筛选结果中取出第一个对象的 id 值,即得到了符合条件的值。
希望能够帮助到您!
相关问题
js 取出某个对象数组中符合某个条件的值 拼成数组
请注意,我是一个语言模型AI,没有保存对话历史记录和个人信息。好的,关于您的问题,您可以使用JavaScript中的filter()函数来筛选符合条件的对象,然后使用map()函数将筛选出来的对象的值拼成数组。示例代码如下:
```
const arr = [{name:'Alice',age:25},{name:'Bob',age:30},{name:'Cindy',age:20}];
const ageFilter = 25; //筛选条件,年龄为25岁
const result = arr.filter(obj => obj.age === ageFilter).map(({name}) => name);
console.log(result); //['Alice']
```
以上代码将会输出一个数组['Alice'],这是符合条件(age为25岁)的数组元素对象的 name 值拼成的数组。希望这个回答可以帮助到您,如果您还有其他问题可以随时问我哈。
vue 循环将某个数组中的某些值取出并组成一个新的对象,再将这个对象push到一个新的数组里面
在Vue中,你可以使用`v-for`指令来遍历数组,并在遍历的过程中根据条件选择性地将数组中的元素构造成一个新的对象,然后将这个对象添加到另一个数组中。以下是一个基本的示例代码:
```javascript
<template>
<div>
<ul>
<li v-for="item in finalArray" :key="item.id">
{{ item.name }}
</li>
</ul>
</div>
</template>
<script>
export default {
data() {
return {
sourceArray: [
{ id: 1, name: 'Apple', type: 'fruit' },
{ id: 2, name: 'Carrot', type: 'vegetable' },
{ id: 3, name: 'Banana', type: 'fruit' },
// ... 其他元素
],
filteredObjectArray: []
};
},
mounted() {
this.sourceArray.forEach(item => {
if (item.type === 'fruit') { // 这里根据你的需求修改条件
this.filteredObjectArray.push({
id: item.id,
name: item.name
});
}
});
}
};
</script>
```
在这个例子中,`sourceArray`是我们原始的数据数组,我们在`mounted`生命周期钩子函数中遍历这个数组。如果数组元素满足特定条件(在这个例子中,元素的`type`属性为`'fruit'`),我们就创建一个新的对象,并将其添加到`filteredObjectArray`数组中。最后,`finalArray`会包含所有符合条件的对象,并可以在模板中通过`v-for`显示出来。
阅读全文