#javascript
#javascript
Вопрос:
Как добавить динамический атрибут к объекту, например, я использую следующий код для добавления атрибута index ( index
) к myObj
, index
это переменная.
var myObj={};
for(var index=0; index<10; index ){
myObj[index]='my' index;
}
Но это не работает…
Комментарии:
1. Это должно сработать, но вы не очень четко представляете, каким должен быть результат, которого вы ожидаете.
2. Это не имеет ничего общего с событиями Javascript или с jQuery. И, насколько я могу судить, это действительно работает. В чем проблема?
Ответ №1:
Если вы действительно хотите, чтобы «myObj» имел свойства типа «my0», «my1» через «my10», то вам нужно
for (var index = 0; index < 10; index)
myObj['my' index] = something;
Ответ №2:
Вместо создания объекта с помощью {} используйте [], поскольку вы создаете простой массив.
var myObj=[];
for(var index=0; index<10; index ){
myObj[index]='my' index;
}
Ответ №3:
Можете ли вы попробовать использовать :
myObj[index ""]='my' index;
Ответ №4:
Вы не можете использовать число в качестве имени свойства в JavaScript так же, как вы используете строку.
Использование myObj[1] вернет значение свойства, которое вы ищете, но myObj.1 этого не сделает.
Лучше всего было бы использовать строку, подобную рекомендуемым @Pointy и @sudimail.