摘要:
今天在项目中碰到一个代码顺序问题,先记录下来,怕以后又忘了,原因如下:fn();function fn(){alert(11)}//代码没问题,会alert的11后来改成:obj.fn()var obj={ fn:function(){ alert(11) }}结果就报错了,将对象的定义放到调用方法之前就不会报错原因:解释程序会执行两步骤,第一步:先对var声明的变量和function函数进行处理(这时候obj=undefined,function还是函数),所以执行obj.fn()会报错,第二步:执行代码 阅读全文