我在javascript中有一个数组。我必须找到该数组的最后一个值。 我的代码就像
var array= fruits;
我必须找到该阵列中的最后一个水果。
答案 0 :(得分:5)
因为在JavaScript中,n
的大小[0..n-1]
的数组是从n-1
索引的,所以你可以通过简单地在.length
索引数组来获取最后一个元素,其中是数组的长度,并且可以由var lastFruit = array[array.length - 1];
属性获取:
.pop
如果您想获取最后一个元素并将其从数组中删除,您可以使用var lastFruit = array.pop(); // get last element of array and remove it from array
methid:
length
注意:正如RobG所说:
{{1}} 至少比最高索引多一个,但可能是 更大的
答案 1 :(得分:4)
首先找到数组中的元素数并将其存储在变量中,如
var total = array.length;
现在您可以使用以下代码
找到数组的最后一个值var last = array[total-1];
答案 2 :(得分:1)
您可以通过使用数组的长度(fruits.length)并减去1(因为数组为0索引)来实现此目的。例如......
fruits[0]="pear";
fruits[1]="apple";
fruits[2]="peach";
所以fruits.length将是3,所以fruits.length - 1 = 2.所以要获得最后一个元素......
var lastFruit = fruits[fruits.length-1];
答案 3 :(得分:1)
我必须找到该数组的最后一个值
长度属性至少比最高索引高一个,但可能更高,在这种情况下 n-1 成员可能不存在。 E.g。
// Create an array with length 10
var a = new Array(10);
// Add one member at index 0
a[0] = 'foo';
所以数组的“last”值在索引0处,其值为“foo”。因此,您可以从 length - 1 开始,向后搜索实际存在的成员:
function lastValue(arr) {
var i = arr.length;
while (i--) {
if (i in arr) {
return arr[i];
}
}
// If get to here, arr has no members
return -1;
}
// All the following arrays have length 4 but different number of members
console.log(lastValue([ , , , ,])); // -1, i.e. there are no members
console.log(lastValue([0,1, , ,])); // 1
console.log(lastValue([0,1,2,3 ])); // 3
console.log(lastValue([ , , ,3 ])); // 3
如果您知道数组只有数字成员(即没有非数字属性且没有负数属性),您可以这样做:
var arr = [,,'foo',,'bar',,]; // length 6, highest member is at index 4
console.log(arr[Math.max.apply(Math, Object.keys(arr))]); // 'bar'
需要ES5 Object.keys 。
答案 4 :(得分:0)
那么你可以找到它的长度,然后你知道最后一个索引,并且可以从中获取项目
var last_item = array[array.length - 1];
答案 5 :(得分:0)
它很简单:
fruits[fruits.length-1]
答案 6 :(得分:0)
在javascript中查找数组最后值的多种方法
不影响原始数组
修改原始数组
通过创建自己的帮助器方法
var arr = [1,2,3,4,5];
console.log(arr.slice(-1)[0])
console.log(arr[arr.length-1])
const [last] = [...arr].reverse();
console.log(last)
console.log(arr.reverse()[0])
console.log('----------Modifies original array----------');
var arr2 = [5, 10, 15];
console.log(arr2.pop())
arr2.push(15)
console.log(...arr2.splice(-1));
console.log('----------By creating own helper method------');
let arr3 = [2, 4, 6, 8, 10];
Object.defineProperty(arr3, 'last',
{ get: function(){
return this[this.length-1];
}
})
console.log(arr3.last);