Показать сообщение отдельно
  #3 (permalink)  
Старый 10.03.2014, 12:32
Аватар для Aetae
Тлен
Отправить личное сообщение для Aetae Посмотреть профиль Найти все сообщения от Aetae
 
Регистрация: 02.01.2010
Сообщений: 6,589

Потому что это на самом деле массив массивов, и делая так
array[1] = 3;
Вы на самом деле заменяете массив под номером 1 на число, и в итоге
array[1][1] = 5;
~
3[1] = 5;
что, естесно, бред.


Если очень хочется - можно применить хак:
function toString(){ return this.value+'' }
function toInt(){ return parseInt(this.value,10) }

var array = new Array(10);
for(var i = 0; i < array.length; i++)
{array[i] = new Array(10);}

array[1].value = 3;
array[1].toString = toString;
array[1].valueOf = toInt;

array[1][1] = 5;

alert(array[1]);
alert(array[1][1]);
но лучше придумать что-нибудь другое.
__________________
29375, 35
Ответить с цитированием