二维数组转一维数组

//二维转一维
var arr=[
[1,2,3],
[2,5,6,7],
[234,234,545]
]
function dir(arr) {
var result=[];
for(var r=0;r<arr.length;r++){
for(var c=0;c<arr[r].length;c++){
result.push(arr[r][c])
}
}
return result;
}

console.log(dir(arr))

//方法二
function dir2(arr) {
var result=[];
for(var r=0;r<arr.length;r++){
result=result.concat(arr[r])
}
return result
}
console.log(dir2(arr))

//方法三
arr=Array.prototype.concat.apply([],arr)
console.log(arr)

//方法四
arr=String(arr).split(",");
console.log(arr)

//把数组转为[1,9,2,8,3,7,4,6,5]
// var arr1=[1,2,3,4,5,6,7,8,9]
// function () {
//
// }


//必须先将数组升序排序
function find(sum,arr){
arr=arr.sort(function (a,b) {
return a-b
})
// arr=arr.sort((a,b)=>a-b)
for(var i=0,j=arr.length-1;i<j;){
if(arr[i]+arr[j]==sum){
console.log(arr[i],arr[j]);
i++;
j--;
}else if(arr[i]+arr[j]<sum){
i++
}else {
j--;
}
}
}
find(19,[1,2,5,7,8,9,,10,15,17,18,23,3,34])
posted @ 2017-06-23 16:23  吾生有涯,而知无涯!  阅读(828)  评论(0编辑  收藏  举报