Open11
PythonとJS
リストの要素を取り出したい
python
for item in 配列オブジェクト:
print(item)
js
for (const item of 配列オブジェクト) {
console.log(item)
}
python
for i, item in enumerate(配列オブジェクト):
print(i, item)
js
for (const i in 配列オブジェクト) {
const item = 配列オブジェクト[i];
console.log(i, item);
}
js
配列オブジェクト.forEach(function(item, i) {
console.log(index, item);
});
辞書型の要素を取り出したい
python
for key, value in 辞書オブジェクト.items():
print(f"{key} = {value}")
js
for (const key in 辞書オブジェクト) {
const value = 辞書オブジェクト[key];
console.log(`${key} = ${value}`);
}
辞書のキーと値を別々に取り出したい
python
keys = 辞書オブジェクト.keys()
print(keys)
values = 辞書オブジェクト.values()
print(values)
js
const keys = Object.keys(辞書オブジェクト)
console.log(keys);
const values = []
for (const key of keys) {
const value = 辞書オブジェクト[key];
values.push(value);
}
console.log(values);
js
const values = Object.values(辞書オブジェクト);
console.log(values);
- こちらももっと簡単な方法があった
js
const keys = [];
for (const key of Map型オブジェクト.keys()) {
keys.push(key)
}
console.log(keys)
-
Map
型はkeys()
でキーのイテレータを取得できる -
for ... of
と組み合わせて配列に変換できる
js
const keys = Array.from(Map型オブジェクト.keys());
const values = Array.from(Map型オブジェクト.values());
- Map型を使うなら
Array.from関数
と組み合わせるのがいいのかも
関数を作りたい
python
def 関数名(引数):
"""関数の説明(docstring)
"""
処理
return 返り値
js
function 関数名(引数) {
// 関数の説明(任意)
処理;
return 返り値;
}
js
// 関数名なし、引数が1つ、処理=返り値の場合
引数 => 処理;
a => a + 10;
// 関数名なし、引数が複数、処理=返り値の場合
(複数の引数) => 処理;
(a, b) => a + b;
// 関数名あり、引数が複数、処理が複数行の場合
let 関数名 = (複数の引数) => {
// 複数行の処理
処理;
return 返り値;
}
-
function
を省略したアロー関数
もある - シンプルな処理の場合は、1行で書ける
- 引数が複数の場合や、処理が複数行の場合は、いつもの
function
の書き方に近くなる -
map()関数
の中で使われてるのをよく見かける