Javascript:var myFunc=function()与var myFunc=function myFunc()的比较
这两者有什么区别Javascript:var myFunc=function()与var myFunc=function myFunc()的比较,javascript,Javascript,这两者有什么区别 var myFunc = function() { // ... }; vs 在第二个示例中,arguments.callee.caller.name起作用,但在第一个示例中不起作用。第二个语法有什么问题吗?第一个函数没有名称 将函数赋给变量不会给函数命名。第一个函数没有名称 将函数赋给变量不会给函数命名。第二个函数有名称,而第一个函数没有名称。函数是具有属性名称的对象。如果函数是匿名的,则它没有名称 var a = function(){}; // anonymous
var myFunc = function() {
// ...
};
vs
在第二个示例中,
arguments.callee.caller.name
起作用,但在第一个示例中不起作用。第二个语法有什么问题吗?第一个函数没有名称
将函数赋给变量不会给函数命名。第一个函数没有名称
将函数赋给变量不会给函数命名。第二个函数有名称,而第一个函数没有名称。函数是具有属性
名称的对象。如果函数是匿名的,则它没有名称
var a = function(){}; // anonymous function expression
a.name; //= empty
var a = function foo(){}; // named function expression
a.name; //= foo
第二个有名字,而第一个没有。函数是具有属性名称的对象。如果函数是匿名的,则它没有名称
var a = function(){}; // anonymous function expression
a.name; //= empty
var a = function foo(){}; // named function expression
a.name; //= foo
函数文本中的名称
是可选的,如果在第一种情况下省略,则表示该函数是匿名的
这是来自:
函数文本有四个部分。第一部分是保留字函数。可选的第二部分是函数名。函数可以使用其名称递归地调用自身。调试器和开发工具也可以使用该名称来标识函数。如前一示例所示,如果函数未指定名称,则称其为匿名函数
函数文本中的名称
是可选的,如果在第一种情况下省略,则表示该函数是匿名的
这是来自:
函数文本有四个部分。第一部分是保留字函数。可选的第二部分是函数名。函数可以使用其名称递归地调用自身。调试器和开发工具也可以使用该名称来标识函数。如前一示例所示,如果函数未指定名称,则称其为匿名函数
var func=函数F(){}
将使F()
在函数块内部可用,但在函数块外部不可用。参数。被调用方
已被弃用,因此如果需要此类功能,请使用命名函数表达式。var func=function F(){}
将使F()
在函数块内部可用,但在函数块外部不可用。参数。被调用方
已被弃用,因此如果需要此类功能,请使用命名函数表达式。每种函数表达式的优缺点是什么?第二种语法有什么问题吗?(除了命名的双重性)没有双重性。第一个没有名字。优点是可以在函数中调用函数进行递归,并且可以在调用堆栈跟踪中看到名称。每种方法的优缺点是什么?第二种语法有什么问题吗?(除了命名的双重性)没有双重性。第一个没有名字。优点是可以在函数中调用函数进行递归,并且可以在调用堆栈跟踪中看到名称;谢谢我将回顾这一部分。你提到了我最喜欢的一本书;谢谢我将回顾这一部分。