如何从这样的数组中获取第一个元素:
var ary = ['first', 'second', 'third', 'fourth', 'fifth'];
我试了一下:
alert($(ary).first());
但它会返回[object object]。所以我需要从数组中获取第一个元素它应该是元素first。
如何从这样的数组中获取第一个元素:
var ary = ['first', 'second', 'third', 'fourth', 'fifth'];
我试了一下:
alert($(ary).first());
但它会返回[object object]。所以我需要从数组中获取第一个元素它应该是元素first。
当前回答
array.find(e => !!e); // return the first element
因为"find"返回第一个匹配过滤器的元素&& !!E匹配任何元素。
注意:只有当第一个元素不是“Falsy”时才有效:null, false, NaN, "", 0, undefined
其他回答
ES6 简单:
let a = []
a[7] = 'A'
a[10] = 'B'
let firstValue = a.find(v => v)
let firstIndex = a.findIndex(v => v)
你也可以使用.get(0):
alert($(ary).first().get(0));
来获取数组的第一个元素。
var ary = ["first", "second", "third", "fourth", "fifth"];
console.log(ary.shift());
//first
cosnole.log(ary);
// ["second", "third", "fourth", "fifth"]
如果你想保持可读性,你可以在array . prototype中添加第一个函数:
Array.prototype.first = function () {
return this[0];
};
A,那么你可以很容易地检索第一个元素:
[1, 2, 3].first();
> 1
我知道从其他语言学习到JavaScript的人,会寻找head()或first()来获取数组的第一个元素,但你怎么做呢?
假设你有如下数组:
const arr = [1, 2, 3, 4, 5];
在JavaScript中,你可以简单地做:
const first = arr[0];
或者一种更整洁、更新的方式是:
const [first] = arr;
但你也可以简单地写一个函数…
function first(arr) {
if(!Array.isArray(arr)) return;
return arr[0];
}
如果使用下划线,有一个函数列表做相同的事情,你正在寻找:
_.first
_.head
_.take