javascript变量,var x = a = {}做什么?

时间:2009-07-08 19:44:01

标签: javascript variables syntax

我在jQuery中看到类似这样的内容:

jQuery.fn = jQuery.prototype = {}

为什么这样做?这是不是只是说jQuery.prototype = {}?我不确定我是否理解Resig在这里所做的事。

4 个答案:

答案 0 :(得分:13)

与:

相同
jQuery.prototype = {}
jQuery.fn = jQuery.prototype

在我看来,让一行中的所有内容更清楚地表明您为两个变量分配相同的值

答案 1 :(得分:3)

这相当于:

jQuery.prototype = {}
jQuery.fn = jQuery.prototype

换句话说,jQuery.fn和jQuery.prototype都指向同一个对象。

答案 2 :(得分:2)

声明x = a = {}表示{}已分配给ax已分配给a = {}; x = a。所以它等于{{1}}。

答案 3 :(得分:2)

要知道的是,在javascript中,每个表达式都有一个返回值,无论它是否有任何副作用(赋值)

从右到左,您有以下声明:

(jQuery.fn = (jQuery.prototype = ({})))

评估第一部分会给出一个空对象:{}:

(jQuery.fn = (jQuery.prototype = {}))

第二个语句执行并将jQuery.prototype设置为{},并计算为jQuery.prototype,给出第二部分:

(jQuery.fn = jQuery.prototype)

将jQuery.fn设置为jQuery.prototype,然后将其计算为:

jQuery.fn

什么也没做。