我是一个新手,当涉及到JS和我试图找出如何返回一个单一的值,而不是一个对象,当使用。find()函数
的例子:
var obj = [
{ name: 'Max', age: 23 },
{ name: 'John', age: 20 },
{ name: 'Caley', age: 18 }
];
var found = obj.find(e => e.name === 'John');
console.log(found);
这将输出{ name: 'John', age: 20 }
我希望它以字符串的形式输出John的年龄(即:20
)。
我错过了什么?
将?.age
添加到found
变量
var obj = [
{ name: 'Max', age: 23 },
{ name: 'John', age: 20 },
{ name: 'Caley', age: 18 }
];
var found = obj.find(e => e.name === 'John')?.age; // Using ?. incase value isnt found.
console.log(found);
您还提到您需要它作为字符串,您可以通过在String
函数中包装found
var来实现,如下所示…
var obj = [
{ name: 'Max', age: 23 },
{ name: 'John', age: 20 },
{ name: 'Caley', age: 18 }
];
var found = String(obj.find(e => e.name === 'John')?.age);
console.log(found);
。Find函数返回一个对象你可以这样做
var age = obj.find(e => e.name === "John").age