Javascript 验证数组的最后一个值是否大于上一个值
我有一个带有值的数组,Javascript 验证数组的最后一个值是否大于上一个值,javascript,arrays,Javascript,Arrays,我有一个带有值的数组,[0,3,4,6,0],如何验证before值是否小于after值 var array = [0,3,4,6,0]; for(var i = 0; i < array.length; i++){ //if the value of 0 >,3 >,4, > 6 //return false; } var数组=[0,3,4,6,0]; 对于(var i=0;i,3>,4,>6 //返回false; } 我需要用户输入一个有序的数字序列,
[0,3,4,6,0]
,如何验证before值是否小于after值
var array = [0,3,4,6,0];
for(var i = 0; i < array.length; i++){
//if the value of 0 >,3 >,4, > 6
//return false;
}
var数组=[0,3,4,6,0];
对于(var i=0;i,3>,4,>6
//返回false;
}
我需要用户输入一个有序的数字序列,如
5,4,3,2,1
。因此,我需要验证enter是否不在有序序列中。您可以做的是循环数组并比较相邻元素,如下所示:
var isOk = false;
for (var i = 0; i < array.length - 1; i++) {
if (array[i] > array[i+1]) {
isOk = true;
break;
}
}
var isOk=false;
对于(var i=0;i数组[i+1]){
isOk=真;
打破
}
}
因此,标志isOk
将确保整个数组按降序排序。函数按顺序(数组){
function inOrder(array){
for(var i = 0; i < array.length - 1; i++){
if((array[i] < array[i+1]))
return false;
}
return true;
}
对于(var i=0;i
迭代所有数组,期望为true,直到达到false,在这里可以跳出循环
有序函数(数组){
var isOk=true;//最初设置为true
对于(var i=0;i数组[i+1]){
//如果有不匹配的地方,我们就完蛋了,名单不符合顺序
isOk=假;
打破
}
}
文件。写入(isOk+“
”);
}
有序([]);
有序([0,0,0,1]);
有序([1,0]);
有序([0,0,0,1,3,4,5]);
有序([5,0,4,1,3,4])代码>在ES5中使用
函数customValidate(数组){
var length=array.length;
返回数组.every(函数(值、索引){
var nextIndex=指数+1;
return nextIndexArray#every
单行解决方案,如果数组不是太大:(Array.toString()==Array.slice(0.sort().reverse())可能=
,否则[0,0,1]
会失败,不是吗?Edit:等等,这不会只检查前两个吗?为什么int i=0
;?这是javascript,不是java。为什么第一次得到条件为真时就破坏它?