您的位置:首页 > 编程语言

代码顺序问题

2011-03-24 11:04 141 查看
今天在项目中碰到一个代码顺序问题,先记录下来,怕以后又忘了,原因如下:

fn();

function fn(){alert(11)}//代码没问题,会alert的11

后来改成:

obj.fn()

var obj={

  fn:function(){

    alert(11)

  }

}

结果就报错了,将对象的定义放到调用方法之前就不会报错

原因:解释程序会执行两步骤,第一步:先对var声明的变量和function函数进行处理(这时候obj=undefined,function还是函数),所以执行obj.fn()会报错,第二步:执行代码
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: