空のリスト(配列)を新しく作成し、元の要素を一つずつコピーする。
pythonの場合
test.py
# coding: utf-8
animal_list = ["イヌ", ["ペルシャ", "マンチカン", "スコティッシュフォールド"], "ヒト", ["ハムスター, カピバラ"]];
new_list = []
for animal in animal_list:
if type(animal) == list:
new_list.extend(animal)
else:
new_list.append(animal)
print(new_list)
js(gas)の場合
test.gs
function make_array() {
var array = ["イヌ", ["ペルシャ", "マンチカン", "スコティッシュフォールド"], "ヒト", ["ハムスター, カピバラ"]];
var new_array = [];
for (var i = 0; i <= array.length - 1; i++) {
if (typeof(array[i]) == "object") {
array[i].map(function(text) { new_array.push(text) });
} else {
new_array.push(array[i]);
}
}
Logger.log(new_array);
}
<メモ>
・リストは可変(大きさを決める必要がない)に対し、配列は不変。(宣言時に大きさを決める必要がある)
・jsでは配列の大きさを決める必要がない?