javascript - Wie tausche ich die Positionen zweier Elemente in einem JS-Array aus?
怪我咯
怪我咯 2017-05-18 11:00:40
0
7
683

Gibt es einen einfachen Weg? Bitte geben Sie mir weitere Ratschläge!

怪我咯
怪我咯

走同样的路,发现不同的人生

Antworte allen(7)
Peter_Zhu

最容易想到的就是

  ` var temp = arr[i];
        arr[i] = arr[j];
        arr[j] = temp;`    或者就是利用字符串和数组的一些方法进行交换,上面也有人提到了。 
过去多啦不再A梦

arr[i]=[arr[j], arr[j]=arr[i]][0]

某草草

ES6可以简单
[a,b] = [b,a]

仅有的幸福
// 给你来个最经典的冒泡排序算法
var arr = [1,3,5,7,9,8,6,4,2];
for (let i = 0; i < arr.length; i++) {
    for (let j = i; j < arr.length; j++) {
        if (arr[i] < arr[j]) {
            // 后面这三行是调换位置的方法
            var temp = arr[i];
            arr[i] = arr[j];
            arr[j] = temp;
        }
    }
}
console.log(arr);
滿天的星座

用个tmp还不够简单?那你试试这个

let a=[1,2,3];
[a[1], a[2]]=[a[2], a[1]];
習慣沉默

var a = [1,4,6,43,5,9,0,23,45];

    function change(arr,k,j) {
        var c = arr[k];

        arr[k] = arr[j];
        arr[j] = c;
        console.log(arr);
    }

    console.log(a);
    change(a,3,7);
Ty80
let arr = [1, 2, 3, 4, 5]
// 交换第三个和第四个元素
// x < y
let x = 3, y = 4

arr.splice(x - 1, 1, ...arr.splice(y - 1, 1, arr[x - 1]))
console.log(arr) /// [1,2,4,3,5]
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage