с рекурсией проблема, что не так в этом коде?
function Matrix() {
if (arguments.length > 1) {
var q = Array.prototype.shift.call(arguments)
var matrix = new Array(q)
for ( var i = 0; i < matrix.length; i++) {
matrix[i] = Matrix.apply(null, arguments)
}
return matrix;
} else {
return new Array(arguments[0])
}
}
|
Цитата:
Наверно вас смутило, то что на alert(Matrix(3,3,2)), вам выдало такой набор запятых ,,,,,,,,,,,,,,,,,, как буд-то массив линейный? На самом деле массив вполне нормальный, трехуровневый, и все такое. Для того чтобы работать/отлаживать JS вам необходимо освоить средства отладки в барузерах. Сейчас для каждого браузера есть встроенный, либо доступный в виде отдельного плагина инстурментарий разработчика. Например Firebug для Firefox В частности вы можете выводить отладочную информацию(в любом инструменте разработчика) через console.log(), и в консоли отобразится структура объекта |
Gvozd,
да, спасибо меня мутил не алерт. Меня смутило то что вывела консоль.
function Matrix() {
if (arguments.length > 1) {
var q = Array.prototype.shift.call(arguments)
var matrix = new Array(q)
for ( var i = 0; i < matrix.length; i++) {
matrix[i] = Matrix.apply(null, arguments)
}
return matrix;
} else {
return new Array(arguments[0])
}
}
console.log(Matrix(3,3,3))
|
Ой, точно работает! Значит у меня хром подглючивал. Ну бывает у него.
Спасибо большое Gvozd за навродку на рекурсию ^^ ![]() Хотела написать лапка получилось папка ) А есть еще какие то приемы которые мне нужно знать? |
Фига у nemo титьки :blink:
|
Изоморф :D
|
упс. так значит, я ошибался
|
Цитата:
|
я думал, что это andmeriemarum (или как его там. авка тоже с котом)
или это он и есть? он же кидал ссылку на профиль вконтакте. надурил? манера разговора та же самая ведь) |
Цитата:
|
| Часовой пояс GMT +3, время: 04:47. |