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

js把实例赋值给变量时,改变量的申明为什么不能提前???

js把实例赋值给变量时,改变量的申明为什么不能提前???

如:   alert(obj)  //结果为undefined;var obj={"a":"1"};//为什么  var obj; 不能提前???
查看完整描述

5 回答

?
浅陌时节

TA贡献1条经验 获得超5个赞

var obj = {'a': '1'}; 等价于:

var obj; // 声明变量

obj = {'a': '1'}; // 赋值操作

javascript中只有声明变量会提前,后面的赋值操作并不会提前。


查看完整回答
5 反对 回复 2017-03-24
?
西兰花伟大炮

TA贡献376条经验 获得超318个赞

实际上是这样的

var objectlala;
alert(objectlala);
objectlala = {
                "a":1
}

声明了,但是没有初始化,所以是undefined,访问一个对象里面不存在的属性也会返回undefined

查看完整回答
3 反对 回复 2017-03-24
?
慕粉4075985

TA贡献104条经验 获得超33个赞

js是以从 上至下的方式 读取代码

查看完整回答
1 反对 回复 2017-03-24
?
千秋此意

TA贡献158条经验 获得超187个赞


已经提前了,不过只有声明提前,赋值不会提前,浅陌时节的回答很详细了。

查看完整回答
反对 回复 2017-03-24
?
管管0_0

TA贡献16条经验 获得超3个赞

js代码是从上到下,一行一行执行的,所有的变量必须先定义,再赋值,顺序不能颠倒

查看完整回答
反对 回复 2017-03-25
  • 5 回答
  • 0 关注
  • 2326 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信