繁体   English   中英

如何使用箭头函数返回数组中的第一项?

[英]How can I return the first item in an array using a arrow function?

我有一个挑战,我应该使用箭头函数返回数组的第一项,但我无法使其正常工作。

数组:

var names = ['Bryan', 'Jeremy', 'Joe', 'Megan', 'Ian', 'Taylor'];

我的箭头功能:

var first = names.filter((name) => name[0]);

实现此目的的最简单方法之一是使用:

var names = ['Bryan', 'Jeremy', 'Joe', 'Megan', 'Ian', 'Taylor'];
let first = names => names[0];
console.log(first(names));

我认为这就是您想要的。

 var names = ['Bryan', 'Jeremy', 'Joe', 'Megan', 'Ian', 'Taylor']; var first = () => names[0]; console.log(first()); 

尝试使用.find而不是.filter

var first = names.find((name, index) => index === 0);

.filter通常用于从具有特定条件的数组中获取值

您可以使用Array#find并在第一个元素的回调中返回true

 var names = ['Bryan', 'Jeremy', 'Joe', 'Megan', 'Ian', 'Taylor'], first = names.find(_ => true); console.log(first); 

箭头功能在这里确实是多余的,但这可能是一种可能的方法:

 var names = ['Bryan', 'Jeremy', 'Joe', 'Megan', 'Ian', 'Taylor']; var first = names.find((name, index) => index === 0); console.log(first); // "Bryan" 

像这样的简单函数怎么样,该函数接受数组作为参数并返回第一项:

const firstItem = arr => arr.shift();

然后只需将数组传递给函数:

const first = firstItem(names);

看下面的代码。

  var names = ['Bryan', 'Jeremy', 'Joe', 'Megan', 'Ian', 'Taylor']; var n = names.filter((names,i)=>names[-i])[0]; console.log(n) 

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM