首页 > 其他 > 详细

关于swap

时间:2015-04-20 14:46:25      阅读:151      评论:0      收藏:0      [点我收藏+]

一个小小的swap确出现了好多个版本。不断的优化,不断的发现问题:

版本一:

function swap(a,b){
    var temp = a;
    a = b;
    b = temp;      
}

这个版本对于数组中的位置无法实现其交换功能。原因是在这种情况下,数组把值传给了函数(仅仅是传值)。

版本二:

function swap(arr,a,b){
    var temp = arr[a];
    arr[a] = arr[b];
    arr[b] = temp;
}

这个版本把数组也传给了函数,这样能实现对数组执行交换的功能。

版本三:

Array.prototype.swap = function(index1,index2){
    var temp = this[index1];
    this[index1] = this[index2];
    this[index2] = temp;
}

这个版本直接写在Array对象原型中。也便于使用。

关于swap

原文:http://www.cnblogs.com/meanhow2013/p/4441464.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!