为了账号安全,请及时绑定邮箱和手机立即绑定

变量可以不声明,直接使用???

变量可以不声明,直接使用。这句话是什么意思,能举个例子吗?

正在回答

3 回答

Javascript声明变量的时候,虽然用var关键字声明和不用关键字声明,很多时候运行并没有问题,但是这两种方式还是有区别的。可以正常运行的代码并不代表是合适的代码。

JS中变量申明分显式申明和隐式申明。

Var i=100  显示申明

i=100  隐式申明

在函数中使用var关键字进行显式申明的变量是做为局部变量,而没有用var关键字,使用直接赋值方式声明的是全局变量。

当我们使用访问一个没有声明的变量时,JS会报错。而当我们给一个没有声明的变量赋值时,JS不会报错,相反它会认为我们是要隐式申明一个全局变量,这一点一定要注意。

var num = 1是在当前域中声明变量. 如果在方法中声明,则为局部变量;如果是在全局域中声明,则为全局变量。而num = 1,事实上是对属性赋值操作。首先,它会尝试在当前作用域链(如在方法中声明,则当前作用域链代表全局作用域和方法局部作用域etc。。。)中解析 num; 如果在任何当前作用域链中找到num,则会执行对num属性赋值; 如果没有找到num,它才会在全局对象(即当前作用域链的最顶层对象,如window对象)中创造num属性并赋值。

注意!它并不是声明了一个全局变量,而是创建了一个全局对象的属性。


5 回复 有任何疑惑可以回复我~

”单元“ 错了,是“但愿”

0 回复 有任何疑惑可以回复我~

就像课件里面写的一样:变量mychar是先用var定义(也就是声明变量)var mychar;】,然后才赋值 【mychar="javascript";】,【var mynum = 6;】这句话是在定义的同时,给变量赋值。但是如果把【var mynum = 6;】改成【mynum = 6;】则在你提交时就会报错,说是:定义变量使用var关键字,即没有定义变量,直接使用了

var mychar;
mychar="javascript";
var mynum = 6;

单元你能看懂,

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

变量可以不声明,直接使用???

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信