gpt4 book ai didi

javascript - 如何以三元+箭头表示法插入 "for"

转载 作者:行者123 更新时间:2023-12-02 22:51:36 27 4
gpt4 key购买 nike

我正在学习 JS,仍处于旅程的开始..

我现在想了解如何表达嵌套在函数中的 for,但遵循箭头+三元格式。

我尝试将for放在代码的几个部分中,但它不接受它。我设法在不考虑 for 的情况下编写它,选择我想查看的数组。但这不是我想要的..

let tester = (name,prop) => contacts[0]["firstName"] == name ? contacts[0][prop] : "error!";

var contacts = [
{
"firstName": "Akira",
"lastName": "Laine",
"number": "0543236543",
"likes": ["Pizza", "Coding", "Brownie Points"]
},
{
"firstName": "Harry",
"lastName": "Potter",
"number": "0994372684",
"likes": ["Hogwarts", "Magic", "Hagrid"]
},
{
"firstName": "Sherlock",
"lastName": "Holmes",
"number": "0487345643",
"likes": ["Intriguing Cases", "Violin"]
},
{
"firstName": "Kristian",
"lastName": "Vos",
"number": "unknown",
"likes": ["JavaScript", "Gaming", "Foxes"]
}
];

function tester(name,prop)
{
for (let i = 0; i < contacts.length;i++)
{
if (contacts[i]["firstName"]==name)
{
return contacts[i][prop]
}
else
{
return "error"
}
}
}

我想了解在哪里使用三元和箭头运算符关联 for

最佳答案

Lambda 的形式类似于 function,可以按照与隐式 return 形式相同的方式内联:

let tester = (name, prop) => {
for (let i = 0; i < contacts.length; i++) {
if (contacts[i]["firstName"] == name) {
return contacts[i][prop];
}
}
return "error";
};

但实际上,您可能需要考虑使用 Array 的集合方法,在本例中为 .find() :

let tester = (name, prop) => {
let results = contacts.find(item => item["firstName"] == name);
return results === undefined ? "error" : results[prop];
};

关于javascript - 如何以三元+箭头表示法插入 "for",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58158959/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com