JS.next

JavaScriptの最新実装情報を追うブログ

末尾呼び出し最適化が実装された

概要

ある関数Aから別の関数Bを呼び出すとき、処理系は後で戻って来れるように一旦Aの状態を保存し、関数Bの処理に入る。
これが問題になるのは再帰の時で、数万回程度の再帰でスタックが一杯になり、エラーとなってしまう。
しかし、もし関数B呼び出しの際に、関数Aに戻ってきて処理を続ける必要のない形で呼びだされていれば、
状態の保存を省略して関数Bに移行する最適化が可能であり、ES2015でその詳細が定義されることとなった。

続きを読む

Object.{values,entries}が実装された

概要

オブジェクトの全ての列挙可能なプロパティの文字列キーの配列を返すObject.keys関数に似た、
値の配列を返すObject.valuesと、キーと値のペアの配列を返すObject.entries関数が実装された。

続きを読む