Javascript 为什么数组不能处理对象

Javascript 为什么数组不能处理对象,javascript,html,arrays,object,Javascript,Html,Arrays,Object,HTML <div class="one_in"></div> JS .one_in{ width:100px; height:100px; border:1px solid #000; } var ar = ["one_in", "two_in", "three_in"]; var colors = { ar[0]: 'blue', ar[1]: 'green', ar[2]: 'red' }; x = document.getElemen

HTML

<div class="one_in"></div>
JS

.one_in{
width:100px;
height:100px;
border:1px solid #000;
}
var ar = ["one_in", "two_in", "three_in"]; 
var colors = {
    ar[0]: 'blue',
    ar[1]: 'green',
    ar[2]: 'red'
};
x = document.getElementsByClassName('one_in');
for (var i = 0 ; i < x.length ; i++ ){
    x[i].style.backgroundColor = colors[x[i].className];
}
var ar=[“一英寸”、“两英寸”、“三英寸”];
变量颜色={
ar[0]:“蓝色”,
ar[1]:“绿色”,
ar[2]:“红色”
};
x=document.getElementsByClassName('one_in');
对于(变量i=0;i
如何在对象内部使用数组
ar
的值
“一英寸”、“二英寸”、“三英寸”
,使我的div分别自动着色为
蓝色
绿色
红色


您必须用
[]
将其包装起来

var colors = {
    [ar[0]]: 'blue',
    [ar[1]]: 'green',
    [ar[2]]: 'red'
};

为什么不直接使用数组值作为对象键呢?对象期望键作为静态字符串。尝试
var colors={};color[ar[0]='blue'
这将创建一个名为
one_in