Javascript 如何获取数组的最后一个数?
我有一个数组。它由10个阵列组成Javascript 如何获取数组的最后一个数?,javascript,arrays,Javascript,Arrays,我有一个数组。它由10个阵列组成 var arr = [[], [], [], [], [], [], [], [], [], []]; 这10个数组中的每一个都有不同数量的数字。我想得到这10个数组中的最后一个数字 我尝试过这样做: var lastNums = []; var i = 0; var j = 0; for (var k = 0; k < 10; k++) { i = arr[k].length - 1; //This code gets number o
var arr = [[], [], [], [], [], [], [], [], [], []];
这10个数组中的每一个都有不同数量的数字。我想得到这10个数组中的最后一个数字
我尝试过这样做:
var lastNums = [];
var i = 0;
var j = 0;
for (var k = 0; k < 10; k++) {
i = arr[k].length - 1; //This code gets number of the last number
lastNums[j] = arr[k][i];
j++;
}
var lastNums=[];
var i=0;
var j=0;
对于(var k=0;k<10;k++){
i=arr[k].length-1;//此代码获取最后一个数字的编号
lastNums[j]=arr[k][i];
j++;
}
但它似乎不起作用。在Chrome控制台中,我得到:
TypeError:无法读取未定义的属性“length”
如果定义阵列arr时没有错误,可以执行以下操作:
lastNumbers = arr.map(function(k){
return k[k.length - 1];
})
现在lastNumbers数组将保存arr中每个数组的最后一个数字。
使用内置数组映射函数的好处是,您不需要
需要关心阵列的大小。上述解决方案适用于任何情况
数组的长度 var arr=[[1,2,3]、[4,5,6,7]、[8,5,6]、[1,6,4,2]、[8,6,3,2]、[4,5,7,8]、[5,4,2,2,1]、[5,6,7]、[4]、[8,8];
var arr = [[1,2,3], [4,5,6,7], [8,5,6], [1,6,4,2], [8,6,3,2], [4,5,7,8], [5,4,2,2,1], [5,6,7], [4], [8,8]];
var lastNums = [];
for(var i=0;i<arr.length;i++){
if(arr[i].length > 0){
lastNums.push(arr[i][arr[i].length-1]);
}
}
alert(lastNums);
var lastNums=[];
对于(变量i=0;i 0){
lastNums.push(arr[i][arr[i].length-1]);
}
}
警报(lastNums);
这意味着在arr[k]
处没有未定义的对象,也没有数组。您确定在同一代码中定义了arr吗?它应该会起作用。顺便说一句,在您当前的代码中,如果数组为空,您将收到undefinedWorks罚款:。是否确定数组有效?是否100%确定数组有10行?