和
var Basket = function(){}
一个具有new function()
,而另一只是有function()
之间的差异。另外一个使用var
。
和
var Basket = function(){}
一个具有new function()
,而另一只是有function()
之间的差异。另外一个使用var
。
它们不是jQuery对象。这是基本的JavaScript语法。
包含var
与否之间的差异在于省略了var
会使变量(RGBCatcher
)在全局范围内隐式声明,这是不好的做法;您应始终使用var
声明。
function
本身声明一个函数(在这种情况下,它是一个函数表达式),因此您可以调用Basket()
来执行指向Basket
变量的函数。
new function
对由function
构造创建的匿名函数调用new
;它与以下内容相同(当然除非你没有创建一个名为Constructor
的函数)。
function Constructor() {
}
var RGBCatcher = new Constructor();
我不明白你为什么需要一个函数名为Basket的变量。说什么函数Baset()和var Basket = function(){}之间的区别是什么?{} – 2012-07-12 13:15:51
@Ben_hawk:请参阅http://stackoverflow.com/questions/1013385/what-is-the-difference-between-a-function-expression -vs申报合的javascrip – Matt 2012-07-12 13:16:18
请按照此线程:
`new function()` with lower case "f" in JavaScript
var a = new function(){
var member = '1';
alert(member);
}
//警报1
var b= function(){
alert('2');
return '2';
}();
//警报2
(function(){
alert ('3');
return '3';
})();
//警报3
alert (a);
//警报[对象对象]
alert (b);
//警报2
这可能帮助:http://stackoverflow.com/questions/2274695/新功能与小写f-in-javascript – techfoobar 2012-07-12 12:32:07
更改标题以更好地反映问题。这里没有jQuery。 – Quentin 2012-07-12 12:32:31
它们都不是jQuery对象。这只是很好的JavaScript。 – Christoph 2012-07-12 12:32:50