调用对象内的数组时遇到问题。
我有一个名为items
的数组(在对象内)。
我还有其他数组,如" name_of_the_item_color_names
"和" name_of_the_item_color_codes
" (只是为了说清楚,name_of_the_item是一个占位符,它是数组items
中的一个值)
无论如何我想知道是否有办法访问它们,使用items
中的一个值以及_color_names
或_color_codes
。
顺便说一下,我知道有[additions_colorizing.items[i]][total]
这样的方法但是我想知道我是否可以添加额外的部分(再次,_color_names
或_color_codes
)
以下是部分代码的示例:
var additions_colorizing = {
items: ['',
'long_hair',
'fancy_hair',
'boys_hair',
'cadence_hair',
'mask',
'viking_helmet',
'hard_hat',
'nose',
'mask',
'snowtuber',
'normal_headphones',
'classic_headphones',
'party_headphones',
'cpi_party_hat',
'cp_party_hat',
'fairy_wings'
],
mask_color_names: ['',
'yellow',
'orange',
'peach',
'red',
'mint',
'green',
'olive_green',
'dark_green',
'blue',
'dark_blue',
'azure',
'azure2',
'light_pink',
'pink',
'purple',
'dark_purple',
'white',
'grey',
'black',
'brown'
],
mask_color_codes: ['',
'#FFF000',
'#FF8400',
'#FF894E',
'#EB0505',
'#00FF59',
'#4DCB09',
'#659B20',
'#19750D',
'#0486C8',
'#203D93',
'#53C5FF',
'#1BB3AE',
'#F862D0',
'#FD009B',
'#CC10E8',
'#680F93',
'#FFFFFF',
'#797979',
'#000000',
'#BA6C08'
]}
//there's more... but I deleted 90% of it ^^

答案 0 :(得分:0)
您可以像这样访问所需的变量:
var item = additions_colorizing.items[5]; //This will get the 'mask' value
var item_color_names = additions_colorizing[item + '_color_names']; //This gets the 'mask_color_names' array
var item_color_codes = additions_colorizing[item + '_color_codes']; //This gets the 'mask_color_codes' array
或者,您可以使用继承/对象结构,而不是使用这么多数组(additions_colorizing.items
中的每个项目为2),其中additions_colorizing.items
中的每个项都是具有值的对象该项目(如果你想显示一个很好的字符串),一个数组与该项目的颜色名称,另一个数组与该项目的颜色代码。
我希望这会对你有所帮助。
祝你好运。