解决方案 »
- 请教关于jquery bxslider导航控制设置
- 请问这个公式是什么意思呀
- 如何获得动态生成的dom元素
- csdn 结帖时前台为不可用(提示状态)但后台是在执行的那种效果是如何实现的啊?
- 登陆JS在IE7下可以正常运行.IE6和maxthon失效的问题
- IE7.0不支持跨域名的代码执行?
- 紧急求助!js自动提交表单问题
- 如何实现多个注册会员之间即时短消息(不是手机短消息,是网上短消息),就像csdn这样
- 关于onload
- 大家都用什么编辑器写JS?有人在线编码吗?
- JS两个页面之间实现淡入淡出效果
- ext4.2 border布局,总感觉代码写的有点问题。是不是少引用什么文件,或者Ext.create("Ext.Viewport",......)
var a = 10;
sayHi();
function sayHi() {
var a = a + 10; /
document.write(a);
}
document.write(a);
</script>
--输出:NaN 10sayHi里边,var a 就相当于 a跟外边没联系了。
重新定义a = a+10
那等号右边的a还没给个确切的值呢;
改成var a = 0
var a = a+10;
<script type="text/javascript">
var str='test';
function shuchu(){
document.write(str+'<br/>');
var str='world';
document.write(str+'<br/>');
}
shuchu();
</script>
输出:
undefined
world
原因:局部变量作用于整个作用域.
原因解释:正因为局部变量作用于整个作用域,所以函数shuchu中的第一行document.write(str+'<br/>');中的str是用的局部变量,然而此时尚未赋值,所以会出现undefined.
var a = a + 10;
document.write(a);
}
=====等同=====
function sayHi() {
var a;//undefined
a = a + 10;//undefined + 10 = NaN
document.write(a);
}
js的运行顺序要弄明白(它是先声明完变量,才给变量值的)
var a = a + 10
其实是 var a ; //这是的a 是undefined
a = a + 10 ; //undefined + 10 = NaN