javascript的var 有木有都没有关系是不是? <html> <body> <script type="text/javascript"> alert(b); b = "3"; </script> </body></html> 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 什么输出也没有,好歹有个undefined吧。 不是这样的,不带var 那就是隐式声明,那会是一个全局变量.小程序里是无关紧要的.如果是一个大的项目,茫茫多的全局变量,是一个巨大的灾难 良好的习惯很重要吧。。http://topic.csdn.net/u/20110112/11/45c81365-a685-42c9-a991-1fab3b7d18e8.html当时也就是少加了VAR。。 在函数内如果没有var,变量会变成全局变量 . 你这段代码会报错的阿,哥哥,难道你把display error的选项勾掉了? 学习了,我也觉得应该至少会是个 underfind 之类的! 到alert(b)就错了 因为b没有定义 是在你alert语句后定义的另:加var 和不加var的区别在于前者隐式声明(局部变量) 后者显示声明(全局变量)这个东西要合理的去运用 js查找全局变量比局部变量要慢的多 我的理解加了var是显示声明,可以不要初始化。如果不加var,那么是隐式声明,必须进行初始化,否则算非法变量名。隐式声明的变量是全局的,可以这样理解 吗?? 什么输出也没有,好歹有个undefined吧。既然隐式声明是全局的,那么本例中,为什么出错了?? 肯定会错了 输出都是在变量后面 变量都没有 用什么输出?一般JS写var比较好,要规范 一行一行下去,你alert(b)之前摆明了还没有b如果 是这样 alert(b); var b = "3"; 到会来个undefined他会进行预编译 ,也就是先找var,进行声明 ,初始化为undefinedvar b = undefinedalert(b)b="3"也就是这样 var就牛一点吗??居然能预编译??? 我理解的是两类进行预先编译的:var 和 function是这样吗?? (function() { a = 3;})();alert(a);(function() { var b = 3;})();alert(b); EXTJS中动态添加checkbox ExtJs Grid导出到Excel,只导出一页的问题 关于div的offsetLeft 求jquery里删除tr下所有子元素,但不删除tr 我用js 在html 页面做了一个下拉菜单,别的浏览器都可以,但是火狐浏览器看不到。如何把下列js代码改为FireFox支持的? IE6 window.opener为空 怎样动态创建和删除一个HTML控件,例如下拉框? 那位高手能帮帮我!!!关于frame的问题,请赐教! 怎么老是要我下载JAVA虚拟机? 修改一个优秀的相对定位层在表格范围内拖动的代码 EXT树异步加载树节点过多问题 简单问题,求指导。。
http://topic.csdn.net/u/20110112/11/45c81365-a685-42c9-a991-1fab3b7d18e8.html
当时也就是少加了VAR。。
在函数内如果没有var,变量会变成全局变量 .
你这段代码会报错的阿,哥哥,难道你把display error的选项勾掉了?
这个东西要合理的去运用 js查找全局变量比局部变量要慢的多
如果不加var,那么是隐式声明,必须进行初始化,否则算非法变量名。
隐式声明的变量是全局的,可以这样理解 吗??
既然隐式声明是全局的,
那么本例中,为什么出错了??
如果 是这样
alert(b);
var b = "3";
到会来个undefined
他会进行预编译 ,也就是先找var,进行声明 ,初始化为undefined
var b = undefined
alert(b)
b="3"
也就是这样
是这样吗??
a = 3;
})();alert(a);(function() {
var b = 3;
})();alert(b);