Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/382.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
javascript数组交换函数_Javascript_Arrays - Fatal编程技术网

javascript数组交换函数

javascript数组交换函数,javascript,arrays,Javascript,Arrays,只是尝试在javascript中创建一个简单的数组交换,并不断得到一个错误 var a = [4,1,2,3]; function swap(x,y){ var src=x; var dest = y; var tmp = a[src]; a[x] = a[y]; a[y] = tmp; return a; } document.write(swap(0,1)); 为什么这不起作用?谢谢你的帮助。谢谢您的功能似乎正常。您还可以将此交换方法添加

只是尝试在javascript中创建一个简单的数组交换,并不断得到一个错误

var a = [4,1,2,3];

function swap(x,y){
    var src=x;
    var dest = y;
    var tmp = a[src];
    a[x] = a[y];
    a[y] = tmp;
    return a;
}

document.write(swap(0,1));

为什么这不起作用?谢谢你的帮助。谢谢

您的功能似乎正常。您还可以将此
交换
方法添加到
数组中。原型

Array.prototype.swap = function(pos1, pos2) {
  this[pos1] = this.splice(pos2, 1, this[pos1])[0];
}
// usage:
var a = [1, 2, 3, 4].swap(0, 1); //=> [2,1,3,4]

什么错误?我看不出有任何错误。它确实有效。没有发现任何错误。使用document.write()编写了一个不平衡的树,导致来自网络的数据被重新解析。有关更多信息,请检查此JSFIDLE:您编写的函数没有问题