Javascript quiz - поразмять мозг
Наткнулся на любопытный тестик. Как сказано в предисловии проверяются следующие знания:
Цитата:
|
Вот на русском есть http://anotherfelix.com/jsquiz/jsquiz.html
|
Kolyaj, почему так? несколько вопросов, которые ломают голову. ответьте пожалуйста :)
var a = [1, 2], b = [1, 2]; a['3'] = 3; b['3b'] = 3; // каг бэ в "b" добавляем console.log(a.length + ' ' + b.length); |
Цитата:
var a = []; a['9999'] = 5; alert(a.length) |
Цитата:
b['3b'] к числу не приводится, видимо, поэтому элемент не присваивается... |
Snipe,
var a = []; a['3b'] = 'Hi!'; alert(a['3b']) |
Цитата:
мне было в новинку это приведение к числу. я думал : "как будет строкой, так и останется".. но тогда будет путаница между свойством и элементом массива. ясно, спасибо за ответы :) вот вывод консоли, на всякий Код:
> a = [1,2] Цитата:
|
Цитата:
a[0], a[1], a[2], a[3] - 4 элемента Длина массива считается по последнему элементу. |
Подробней http://alljs.ru/articles/array/whatis
Цитата:
Подробней http://javascript.ru/ecma/part15#a-15.4 |
Цитата:
var arr = new Array(10);arr.length == 10, но ни одного элемента в массиве нет. |
И тут кстати заметна разница в работе for:
var a = [1, 2]; a['hello'] = 3; for (var i in a) { console.log(i, a[i]) } // 0 1 // 1 2 // hello 3 for (var i = 0; i < a.length; i++) { console.log(i, a[i]); } // 0 1 // 1 2 |
alert(100['toString']['length']); не догоняю что здесь что... |
100['toString'] — метод toString, свойство length для функции равно количеству принимаемых аргументов.
Метод toString для чисел принимает один аргумент — основание системы счисления, в которой нужно вернуть число. |
Цитата:
{неплюсуеть пока} |
Часовой пояс GMT +3, время: 20:41. |