如何从这样的数组中获取第一个元素:

var ary = ['first', 'second', 'third', 'fourth', 'fifth'];

我试了一下:

alert($(ary).first());

但它会返回[object object]。所以我需要从数组中获取第一个元素它应该是元素first。


当前回答

@thomax的答案很好,但如果数组中的第一个元素为false或false-y(0,空字符串等),则会失败。除了undefined,最好返回true:

const arr = [];
arr[1] = '';
arr[2] = 'foo';

const first = arr.find((v) => { return (typeof v !== 'undefined'); });
console.log(first); // ''

其他回答

尝试警报(ary[0]);。

只需使用ary.slice(0,1).pop();

In

var ary =[’first’,’second’,’third’’fourth’、’fifth’]; 游戏机。log(1º”+ ary slice(0.1)。pop ()); “2º”游戏机。log (+ ary slice(0.2)。pop ()); 游戏机。log(“3º”+ ary slice(0.3)。pop ()); 游戏机。log(“4º”+ ary slice(0.4)。pop ()); “5º”游戏机。log (+ ary slice(0.5)。pop ()); 游戏机log(“最后”+ ary。slice (- 1) pop ());

array.slice(START,END).pop();

如果第一个元素被删除,索引0的元素可能不存在:

Let a = ['a', 'b', 'c']; 删除一个[0]; 对于(令I在a中){ Console.log (i + ' ' + a[i]); }

更好的方法得到第一个元素没有jQuery:

函数优先(p) { For (let I in p) return p[I]; } Console.log (first(['a', 'b', 'c']));

@thomax的答案很好,但如果数组中的第一个元素为false或false-y(0,空字符串等),则会失败。除了undefined,最好返回true:

const arr = [];
arr[1] = '';
arr[2] = 'foo';

const first = arr.find((v) => { return (typeof v !== 'undefined'); });
console.log(first); // ''

当数组下标从0开始时,前面的示例工作得很好。thomax的答案并不依赖于从0开始的索引,而是依赖于我没有访问权限的Array.prototype.find。下面的解决方案使用jQuery $。对我来说,每一种都很有效。

let haystack = {100: 'first', 150: 'second'},
    found = null;

$.each(haystack, function( index, value ) {
    found = value;  // Save the first array element for later.
    return false;  // Immediately stop the $.each loop after the first array element.
});

console.log(found); // Prints 'first'.