首先不能运用reverse();代码长度不能超过30个字符。
js运用数组的sort()方法实现反转该怎样传参。
或者运用另一种方法实现数组反转也行。
reverse=a=>[...a].map(a.pop,a)
var arr = new Array(1, 2, 3, 4, 5); var res = new Array(); for (var i = arr.length-1; i >= 0; i--) { res.push(arr[i]); } arr = res; console.log(arr);
倒过来循环一下不就可以了
代码长度不超过30个字符
while(a.length)b.push(a.pop())
刚好30个字符,我真是无聊
要封装成一个方法
arr.sort((a, b) => a < b)
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9', '0', '1', '2', '3', '4', '5', '6', '7', '8', '9'],得到的结果是错的。
var values=[0,1,5,10,15];
values.sort(compare);
console.log(values);
//输出:Array(5) [ 15, 10, 5, 1, 0 ]
刚好,只不过需要一个辅助定位的函数
function compare(value1,value2) {
if(value1 <value2){
return 1;
}else if(value1 >value2){
return -1;
}else{
return 0;
}
}
但是这样具体的是数组升序排列,不算完全的反转把