У меня есть следующий код:Javascript Array.push методом эмиссионной
function build_all_combinations(input_array){
array = [1,2,3]
limit = array.length - 1
combo = []
for(i = 0; i<= limit; i++){
splice_value = array.splice(0,1)
push_value = splice_value[0]
array.push(push_value)
console.log(array)
combo.push(array)
}
console.log(combo)
}
который выводит:
[2, 3, 1]
[3, 1, 2]
[1, 2, 3]
[[1, 2, 3], [1, 2, 3], [1, 2, 3]]
Последняя строка должна быть: [[2, 3, 1],[3, 1, 2],[1, 2, 3]]
Я, очевидно, не grokking что-то о том, как работает массив. Каждый отдельный массив правильный, но когда я иду, чтобы подтолкнуть их к комбинированному массиву, что-то не удается на этом пути. Что это?
Что вы хотите быть? –
Являются ли эти переменные определенными в другом месте? как насчет 'i'? похоже, что это глобально. Попробуйте сделать 'i' local с' var' -> 'for (var i = 0 ...' – elclanrs
Вы хотите нажать push_value в комбо? –