【发布时间】:2012-10-01 07:40:37
【问题描述】:
可能重复:
What is the difference between a function expression vs declaration in Javascript?
在 JavaScript 中声明函数的两种方式有什么区别?
myFunction : function(variable)
{
}
或
function myFunction(variable)
{
}
【问题讨论】:
-
第一个 sn-p 是无效的,除非它在对象字面量的上下文中。如果您想知道函数表达式和声明之间的区别:stackoverflow.com/questions/1013385/… 和 stackoverflow.com/questions/5403121/…。在 JS 中也不存在诸如
int之类的类型提示(这也是无效的)。 -
它在 var x = declare("...", { > });该语法实现了什么?我不能在这样的对象中使用常规语法吗?
-
所以
{ <<right here>> }是一个对象字面量,myFunction是它的一个属性,持有一个函数作为值。不过,在第一种情况下,您有一个函数表达式,而在第二种情况下,您有一个函数声明,这两者之间的区别之前已经彻底讨论过。 -
所以 myFunction 是一个变量?为什么不是 myFunction = function(variable)?
-
在第一种情况下,它是某个对象的属性,在第二种情况下,是的,我想可以说它是一个变量。如果您想了解对象的工作原理,请查看developer.mozilla.org/en-US/docs/JavaScript/Guide/…。
标签: javascript