如何从这样的数组中获取第一个元素:
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。
当前回答
一个香草的JS代码,没有jQuery,没有库,没有什么..: P . .如果数组下标不是从0开始,它也会工作。
var必要=['第一次','第二','第三',' 4 ',' 5 ']; console.log (Object.values(必要)[0]);
其他回答
声明一个原型来获取第一个数组元素:
Array.prototype.first = function () {
return this[0];
};
然后把它用作:
var array = [0, 1, 2, 3];
var first = array.first();
var _first = [0, 1, 2, 3].first();
或者简单地说(:
first = array[0];
使用ES6。
let arr = [22,1,4,55,7,8,9,3,2,4];
let {0 : first ,[arr.length - 1] : last} = arr;
console.log(first, last);
or
let {0 : first ,length : l, [l - 1] : last} = [22,1,4,55,7,8,9,3,2,4];
console.log(first, last);
其他答案的问题是,许多答案不能处理数组为空或未定义的情况,而能够处理这个问题的答案要么很难读取,要么需要使用库。
我能想到的最干净的纯JavaScript方法是使用可选的链接和三元操作符:
Const first = array?长度呢?数组[0]:undefined
如果你需要支持旧的浏览器,你也可以在没有可选的链接的情况下这样做:
Const first = array && array。长度呢?数组[0]:undefined
这样做的另一个好处是,如果你需要返回一个非undefined的值(例如在React组件中返回null),你可以很容易地更新代码来做到这一点。
如果你将一个视图函数链接到数组,例如。
阵列。地图(i => i+1)。过滤器(i => i > 3)
想要在这些函数之后的第一个元素,你可以简单地添加。shift()它不会修改原始数组,这比数组更好。映射(i => i+1)。过滤器(=> I > 3)[0]
如果你想要一个数组的第一个元素而不修改原始元素,你可以使用array[0]或array.map(n=>n).shift()(没有映射,你将修改原始元素。顺便说一句,在这种情况下,我建议…[0]版本。
为什么不考虑数组可能为空的时间呢?
var ary = ['first', 'second', 'third', 'fourth', 'fifth'];
first = (array) => array.length ? array[0] : 'no items';
first(ary)
// output: first
var ary = [];
first(ary)
// output: no items