js 取出某个对象数组中符合某个条件的值 拼成数组
时间: 2023-06-09 21:06:56 浏览: 97
请注意,我是一个语言模型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 值拼成的数组。希望这个回答可以帮助到您,如果您还有其他问题可以随时问我哈。
相关问题
js中,一个对象数组,取出其中type不同的拼接成[text:'type']样式的数组对象,在取出group不同的也拼接成[text:'type']
使用 JavaScript 的 Array.filter() 和 Array.map() 方法可以实现这个需求。
首先,使用 Array.filter() 方法筛选出 type 不同的对象,然后使用 Array.map() 方法将其转换为 [text:type] 的格式。
代码如下:
```
let newArray = originalArray.filter((item, index, self) =>
index === self.findIndex((t) => (
t.type === item.type
))
).map(item => ({text: item.text, type: item.type}));
```
再使用 Array.filter() 和 Array.map() 方法筛选出 group 不同的对象,然后使用 Array.map() 方法将其转换为 [text:type] 的格式。
代码如下:
```
let newArray2 = newArray.filter((item, index, self) =>
index === self.findIndex((t) => (
t.group === item.group
))
).map(item => ({text: item.text, group: item.group}));
```
这样就可以获徖一个新的对象数组,其中 type 和 group 都不同的对象拼接成 [text:type] 和 [text:group]格式的数组对象了。
取出数组对象中的一个字段拼接为字符串
可以使用 JavaScript 中的 map 和 join 方法来实现这个功能。假设数组对象为 arr,字段为 field,代码如下:
```
const str = arr.map(obj => obj[field]).join('');
```
这将遍历数组对象,取出每个对象的指定字段的值,并将它们拼接成一个字符串。
阅读全文