javascript - 我的箭头功能有什么问题?

标签 javascript arrow-functions

我正在努力应对这一挑战,但无法弄清楚。

这是挑战:

使用内置的 filter 方法过滤 jobs 对象数组,并返回拥有程序员职位的人的对象。确保将箭头函数与过滤方法结合使用。

不应在最终解决方案中使用 ES5 函数声明语法。

不应使用 for 循环。

解决方案中的任何地方都不应该有 function 关键字。

这是提供的数组:

var jobs = [{receptionist: "James"}, 
            {programmer: "Steve"},
            {designer: "Alicia"}];

这是我的代码:

var solution = jobs.filter((programmer) => programmer === "Steve");

还提供了var解决方案。

最佳答案

在传递给 filter 的函数中,参数是一个对象(因为 jobs 是一个对象数组),而不是字符串。 programmer 将是该对象的属性。

另一个问题是,当您应该检查对象是否具有 programmer 属性时,您的代码正在检查特定名称 (Steve)。

最后,请记住 filter 返回一个数组,因此您的解决方案将是该数组的第一个元素。

这个有效:

var jobs = [{receptionist: "James"}, 
            {programmer: "Steve"},
            {designer: "Alicia"}];

var solution = jobs.filter((person) => person.programmer)[0];

console.log(solution);

关于javascript - 我的箭头功能有什么问题?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47229888/

相关文章:

javascript - 关闭在 WPF WebBrowser 中运行的网页

javascript - 箭头函数和 `this`

javascript - 寻找颜色的平均值? - 十六进制字符串

javascript - 'this' 指的是在方法内部定义的 IIFE 内部定义的内部箭头函数吗?

javascript - 这个 iframe Buster 脚本看起来安全吗?

javascript - JavaScript 中的文本涂抹效果

javascript - 新手d3堆积面积图

javascript - 如何在箭头函数中使用 'this' 来引用被单击的元素

javascript - ES6 箭头函数和使用 Function.prototype.bind 绑定(bind)的函数之间有什么区别(如果有的话)?

javascript - 使用 .js 更新上下文变量。这是可能的?