JavaScript,为什么函数名在函数文字中没有意义?
我对函数文本JavaScript,为什么函数名在函数文字中没有意义?
- 有些疑惑为什么在函数文本函数名有没有意义?
- 他们为什么不重要?
-
为什么在我们尝试在函数文字的情况下使用函数名称进行调用时,函数不会被调用?
var a = function b(){ //some code } b(); //Doesn't work
为什么名字b的毫无意义,但是一个呢?
我是新来的JavaScript和初学者,所以任何帮助将不胜感激!
名称b
仅在函数内部有意义。外面你必须通过a
调用功能。
Ik那,但是为什么!这是我的问题!为什么没有意义?我不明白为什么... –
@MohammedShoaib因为它是一个表达式,并没有声明一个名字,比如'var'或'function'。这就是它的工作原理。 – Bergi
当你声明一些匿名函数时,这个函数是有用的,并且这个函数必须有权访问它自己的属性。但是如何?在这种情况下,命名函数声明可以帮助你。例如:'var a = function b(){b.prop = 42; }'。没有'b'名称属性不可访问。 – mentalMedley
请参阅:https://stackoverflow.com/documentation/javascript/186/functions/4877/named-functions#t=201707081325420732181和https://stackoverflow.com/documentation/javascript/186/functions/726/匿名函数#t = 201707081325420732181 – Nisarg
'a.name ==“b”'肯定有意义 – Bergi