У меня есть блок кода, который использует Math.random (). Я заметил, что иногда возвращаемое значение будет «Не определено». Это код, который я использовал:
return data.map(val => {
var r = Math.random();
if (r < this.mutChance) {
console.log(Math.random);
debugger;
return this.rDna(val);
}
return val;
});
Когда я устанавливаю переменную mutChance равной 0 и позволяю коду бегать немного, в конце концов вызывается отладчик и показывает, что значение r не определено. Я попытался воспроизвести проблему, запустив в консоли
var test = Math.random();
while(test){
test = Math.random();
}
Однако этот цикл никогда не заканчивался. Я понятия не имею, почему функция будет действовать по-другому в моем объекте, и console.log (Math.random);Говорит, что функция все еще имеет свой собственный код. Нигде я не переопределяю случайную функцию и не использую переменную r где-либо еще.
Я относительно новичок в JavaScript и больше нигде не смог найти эту проблему. Единственный другой код, который я импортировал, - это пакет p5.min.js.