火狐方法提升(oddities)的细节

代码1:

if(xxx)
{
    ...;
}
else
{
 $.ligerui.get("myadmin_id").set('onBeforeOpen', f_selectContact);
 function f_selectContact() {
 ...;
 }
}

代码2:


if(xxx)
{
    ...;
}
else
{
 function f_selectContact() {
 ...;
 }
  $.ligerui.get("myadmin_id").set('onBeforeOpen', f_selectContact);
}




代码1在ie,chrome下运行都很正常,firefox下确提示 f_selectContact 未定义,网上一查发现 firefox 对于在非function代码块中定义的方法是不会进行提升操作的。

参考资料:

https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Scope_Cheatsheet#function_oddities

http://stackoverflow.com/questions/8645433/function-is-undefined-in-firefox-only

你可能感兴趣的:(火狐方法提升(oddities)的细节)