Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Странное поведение (https://javascript.ru/forum/misc/16803-strannoe-povedenie.html)

FINoM 22.04.2011 21:16

Странное поведение
 
В общем пользуюсь библиотекой bigINt для работы с большими числами и столкнулся с проблемой, которая скорее всего не имеет отношения к данной библиотеке.

Где-то в середине всей программы следующий код:

console.log(probPrimeN); //[20853, 28974, 2692, 22964, 28789, 1756, 20357, 26064, 31729, 15329] (числа хранятся в виде массивов)
console.log(dup(ONE)); //[1, 0, 0, 0, 0, 0, 0, 0, 0, 0] dup — функция для клонирования объекта (ONE == [1, 0, 0, 0, 0, 0, 0, 0, 0, 0])
probPrimeN = dup(ONE); //самое обычное присваивание; ожидаем, что probPrimeN будет равен ONE 
console.log(dup(ONE)); //[1, 0, 0, 0, 0, 0, 0, 0, 0, 0] вывожу, чтоб показать, что dup(ONE) всегда возвращает одно и то же
console.log(probPrimeN); //[747, 7787, 6839, 32543, 22804, 311, 21081, 18281, 2966, 6020]
Почему probPrimeN не присваивает dup(ONE) и получает значение неведомой херни, которую не ожидали?


Часовой пояс GMT +3, время: 13:22.