function test(){ return 1;}var a=test;console.log(a);//输出[Function: test]var b=test();console.log(b);//输出1 函数名是一个对象,而对象是保存内存中,函数名是指向这个对象的指针. var a=test便是这个函数对象的指针给a. var b=test()后面加上圆括号就表示立即调用,范围函数的返回值.还可以在函数体后面加圆括号表示立即调用.————————————————版权声明:本文为CSDN…
有个document里定义了一个函数func(),同时在document里嵌入了一个iframe,在这个iframe里调用父窗口的方法:parent.func(),本来我以为这个函数的运行环境是在这个iframe自己里面,测试发现虽然是在iframe里面调用的这个函数,但是运行环境依然是在父窗口里. 所以也验证了JS权威指南中的:js函数运行在它们被定义的作用域里,而不是它们被执行的作用域里. 又比如 var a=1; function f1(){console.log(a);}; functi…