带有返回自定义对象的函数的Javascript“新”
Posted
技术标签:
【中文标题】带有返回自定义对象的函数的Javascript“新”【英文标题】:Javascript 'new' with function returning self-defined object [duplicate] 【发布时间】:2013-01-22 17:29:25 【问题描述】:假设我有以下功能:
var A = function()
var label = "hello";
return
getLabel: function() return label;
;
两者有什么区别:
var a = A();
和
var a = new A();
?
注意:我不是在这里问what is the 'new' keyword in javascript,而是在这个特定示例中它的行为方式。
【问题讨论】:
见***.com/questions/1646698/… 请通过这个***.com/questions/1646698/… 是的,我已经读过了。我只是想知道这个特定示例是否有任何区别 @fmsf 问题是关于给定示例的,这就是为什么我发布它尽管存在***.com/questions/1646698/… @GhoulFool 询问new
事物在特定情况下的应用是否无关紧要?
【参考方案1】:
在您的特定情况下,不,没有区别。
无论哪种方式,您的函数都会返回一个自定义对象。通过使用 new
关键字调用函数,ECMAscript 将自动为您创建一个新对象(同时使用 prototype
和 constructor
属性做一些魔术),您可以访问 / 在function (-constructor)
内通过this
写信给。
同样,您在该函数中的 return
调用将始终准确返回该对象引用。
【讨论】:
+1 - 此处重要的示例:jsfiddle.net/9Xcbr以上是关于带有返回自定义对象的函数的Javascript“新”的主要内容,如果未能解决你的问题,请参考以下文章
JS内置对象-String对象Date日期对象Array数组对象Math对象