["a", "b", "c", "d"]; array.slice(1, 3); // => ['b', 'c'] array.slice(3); // => ['d'] array.slice(-2); // => ['c', 'd'] // array.slice(1, 3)と同等 array[1:3] // => ['b', 'c'] // array.slice(0, 3)と同等 array[:3]; // => ['a', 'b', 'c'] // array.slice(1)と同等 array[1:]; // => ['b', 'c', 'd'] // コピーが作られる。 array.slice()と同等 array[:]; // => ['a', 'b', 'c', 'd'] // array.slice(-2)と同等 array[-2:]; // => ['c', 'd'] // array.slice(0, -10) と同等 array[:-10]; // => [] Initial commit: 2018/5/2 Latest commit: 2020/7/12 Champion: @gsathya https://github.com/tc39/proposal-slice-notati on Array.prototype.slice 引数が1つのときの挙動が 分かりづらくない? 新しい記法の提案 対応表: • a[n:m] ⇔ a.slice(n, m) • a[n:] ⇔ a.slice(n) • a[:m] ⇔ a.slice(0, m) • a[:] ⇔ a.slice()