目标:js的属性名可以使用变量。

例如:js对象、对象可以在分配给对象属性时使用以下方式

复制代码代码如下所示:

var对象;

object.prop1 =中;

object.prop2 =value2;



它也可用于如下:

复制代码代码如下所示:

Object.push({ PROP1:中});

Object.push({ prop2:value2});



这里PROP1作为属性名称,可直接引用或使用,如:

复制代码代码如下所示:

Object.push({PROP1 :中});



表达的意思是一样的,也就是说,PROP1只能认定为常数,即使它是一个变量,例如:

复制代码代码如下所示:

VaR PROP1 =prop2 ;

Object.push({ PROP1:中});



碰巧通过对象如访问prop2什么:

复制代码代码如下所示:

警报(对象。prop2)



不要问,当然,不确定的,并获得object.prop1是中

有理由说,不管引号是什么,属性都是常量。

复制代码代码如下所示:

var arr = { };

{ } = 'jquery ARR 'js ' ';

{ } = 'oocss ARR 'css ' ';

var obj = { };

(我对VaR在ARR)

{

Obj。我= ARR {我};

}

警报(obj,JS);



读者将猜不到警报将打印出来。

当然,它是未定义的。

让我们再猜一次,如果警报(obj。我)打印出什么

当然,这是因为obj OOCSS,为什么只有一个属性,现在的我,并通过这两个周期的obj的前面。我的背上。

如果有需求,需要添加动态属性,即属性必须是一个变量,如示例代码,警报(obj。JS)是没有定义的,但是jQuery,如何修改它

复制代码代码如下所示:

var arr = { };

{ } = 'jquery ARR 'js ' ';

{ } = 'oocss ARR 'css ' ';

var obj = { };

(我对VaR在ARR)

{

obj {我} = ARR {我};

}

警报(obj,JS);



很简单。对象被视为一个数组。它支持使用类似的下标形式将属性和属性值赋给对象。然而,对象是静止的物体,和obj.length不存在。