push и unshift в многомерных массивах - найди косяк в 10 строчках
Добавлено: 18 дек 2015, 13:29
Всем привет!
Для любителей сломать себе мозг - сохраните нижеследующее в файл *.hta и запустите. По-моему, забавный косяк. Буду благодарен за идею, как исправить.
<html>
<head>
<title>Untitled</title>
</head>
<body>
Fucked Push changes all new rows!
<script>
var arr1 = [[10,1,2],[11,4,5],[12,7,8]];
var oneLASrow = new Array;
while (arr1[arr1.length-1][0] < 20)
{
oneLASrow[0] = arr1[arr1.length-1][0] + 1;
for(var i=1; i < arr1[0].length; i++)
{
oneLASrow = -1;
}
arr1.push(oneLASrow);
alert (arr1[0]+ "\n" + arr1[1] + "\n" + arr1[2] + "\n" + arr1[3]+ "\n" + arr1[4] + "\n" + arr1[5] + "\n" + arr1[6]);
}
</script>
</body>
</html>
Для любителей сломать себе мозг - сохраните нижеследующее в файл *.hta и запустите. По-моему, забавный косяк. Буду благодарен за идею, как исправить.
<html>
<head>
<title>Untitled</title>
</head>
<body>
Fucked Push changes all new rows!
<script>
var arr1 = [[10,1,2],[11,4,5],[12,7,8]];
var oneLASrow = new Array;
while (arr1[arr1.length-1][0] < 20)
{
oneLASrow[0] = arr1[arr1.length-1][0] + 1;
for(var i=1; i < arr1[0].length; i++)
{
oneLASrow = -1;
}
arr1.push(oneLASrow);
alert (arr1[0]+ "\n" + arr1[1] + "\n" + arr1[2] + "\n" + arr1[3]+ "\n" + arr1[4] + "\n" + arr1[5] + "\n" + arr1[6]);
}
</script>
</body>
</html>