js里交换2值得函数求解

hphper 发布于 2014/11/06 21:15
阅读 255
收藏 1
js没有&传递符号,怎么用函数交换2个两个基本变量的值啊
function swap1(a,b){
	return [b,a];
}
var a=1;
var b=2;
 [a,b]=swap1(a,b);
 alert(a)

这是从书上找的,但是就是有错误,

大家有没有这样的函数,啊

加载中
0
hphper
hphper

引用来自“芝麻谷”的评论

额,你这路子不对啊

你写的不符合我的需求,告诉你,我问题上的代码完全正确,只不过需要js1.7去执行而已,

<script type="application/javascript;version=1.7">

我问题里的代码

<script>

在firefox里完全可以执行

hphper
hphper
抱歉啊,对不起,谢谢你,我不该这么说
芝麻谷
芝麻谷
对不起,我错了!我 不该手贱。。。
0
芝麻谷
芝麻谷
额,你这路子不对啊
hphper
hphper
求指条明路
0
芝麻谷
芝麻谷

<script>
function swap(){
	var a = 1;
	var b = 2;
	doSwap(a,b);
	[a,b] = doSwap1(a,b);
	//alert('a='+a);
}

function doSwap(a,b){
	var temp = a;
	a = b;
	b = temp;
	alert('a='+a);
	alert('b='+b);
}

function doSwap1(a,b){
	return [b,a];
}
</script> 



<html>
<head></head>
<body>
<div id="test" onclick="swap()" style="cursor:pointer">
    呵呵
</div>
</body>
</html>
<style></style>




看吧,两种方法都可以很简单啊!我觉得你需要了解下js的语法!

hphper
hphper
我是这个意思,不是在函数里变化,我是在函数运行后变量的值互换,比如a=1,b=2;运行一个函数后swap(a,b);然后打印a,b他俩的值互换了
0
月落苍穹
月落苍穹
 [a,b]=swap1(a,b);
[a, b]真的可以当做左值?
hphper
hphper
可以的亲,请看下面我的评论
返回顶部
顶部