标题:彻底搞晕了
取消只看楼主
每天都要进步
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2006-2-19
 问题点数:0 回复次数:2 
彻底搞晕了

<script language="JavaScript" type="text/JavaScript">
function aa()
{ x = 4; }
var x =1;
aa();
alert(x);
</script>
结果为4

function aa()
{ x = 4; }
var x =1;
aa(x);
alert(x);
结果为4


function aa(x)
{
x = 4;
}
var x =1;
aa(x);
alert(x);
结果为1

function aa(x)
{
x = 4;
}
var x =1;
aa();
alert(x);
结果为1

请问 function aa(x) 和 function aa()到底有什么区别啊.就是一个是传值一个没有值吗.
aa(x) 和 aa()的时候结果都为1 这2个应该不同吧.

也许我对函数还没理解透,谁能告诉我这是为什么啊

搜索更多相关主题的帖子: function var alert script 
2007-05-04 11:52
每天都要进步
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2006-2-19
得分:0 

var x =1;赋的值就是全局变量啊.为什么传值进去就是1,不传值就是4呢.还是搞不明白.

是不是x=1的内存单元和传值进去后函数中改变的内存单位不是一块啊. 想的晕头转向的...谁能一句话惊醒梦中人啊

如果function aa(x) 是定义了局部变量,那我在函数里加了个retun 返回值,可还是1啊..


<script language="JavaScript" type="text/JavaScript">
function aa(x)
{ x = 4;
return (x);
}
var x =1;
aa(x);
alert(x);
</script>结果为1


[此贴子已经被作者于2007-5-4 14:53:48编辑过]

2007-05-04 14:20
每天都要进步
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2006-2-19
得分:0 
pity1115谢谢
2007-05-04 21:48



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-136842-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 1.459069 second(s), 8 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved