有关javascript全局变量的问题

<scripttype="text/javascript">functionmyfun(){myvalue="这是一个全局变量";document.write("这是在函... <script type="text/javascript">
function myfun(){
myvalue="这是一个全局变量";
document.write("这是在函数体内输出的文字:",myvalue);

}
myfun();
document.write(myvalue);
</script>
请问在函数体里面的("这是在函数体内输出的文字:",myvalue)myvalue为什么也是全局变量,我很不理解,在函数体里面的不都应该是局部变量吗,谁能解释下
展开
 我来答
ouwanqu
2012-02-13 · 超过19用户采纳过TA的回答
知道答主
回答量:74
采纳率:0%
帮助的人:49.7万
展开全部
因为myvalue前面没有加var,如果加了就是myfun的局部变量,如果不加就是全局变量,所以养成定义变量前写var的习惯还是很重要的嗯……
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
伍慕明
2012-02-13 · TA获得超过362个赞
知道小有建树答主
回答量:383
采纳率:0%
帮助的人:340万
展开全部
通过使用var 关键字为在函数中使用的变量设定一个作用域
如果在函数中使用了var,那么变量 == 局部变量
如果没有使用var,那么变量 == 全局变量

如果脚本中还存在另一个同名的变量,这个函数将覆盖那个现有变量的值。

所以建议养成使用var 的良好习惯。
来自javascript dom编程艺术
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
缓步莫迟疑C
2012-02-13 · TA获得超过1.1万个赞
知道大有可为答主
回答量:6217
采纳率:73%
帮助的人:6538万
展开全部
在js中,如果你不声明变量,那么它就默认具有全局范围的可见度. 但是当你在过程中使用var声明,那么它就是过程级变量.
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
lency_cn
2012-02-13 · TA获得超过287个赞
知道答主
回答量:229
采纳率:100%
帮助的人:170万
展开全部
如果你需要一个局部变量的话,你可以加上声明
var myvalue="这是一个局部变量";
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式