2014-01-01から1年間の記事一覧
概要 配列を作る2つのArrayのスタティックメソッドが実装された。
概要 @@isConcatSpreadableは、Array.prototype.concatメソッドにおいての振る舞いを指定するビルトインシンボルである。
概要 配列に指定した値が含まれているかどうかの真偽値を返すメソッドである。
概要 正規表現オブジェクトのフラグが何か取得するためのゲッターである。
概要 今まではサロゲートペアによる文字を1シーケンスで表すことが出来なかったが、ES2015では『\u{xxxxx}』の形式で「0xffff」を超える文字コードを表すことができる。
概要 テンプレート文字列を記述できる構文が実装された。
概要 待ち焦がれた人も多いことだろう。ES2015の一番の目玉機能とも言えるクラス構文が、ついにV8でサポートされた。 Class構文は、『関数(コンストラクタ)定義』+『.prototypeへのメソッド定義』の糖衣構文である。 JSで今まで様々に工夫されてきたクラ…
概要 長らく予約語であったsuperキーワードが、継承元の関数を呼ぶためのキーワードとして機能するようになった。
概要 例えば『Object.prototype.toString.call([])』と呼ぶと、『"[object Array]"』と帰ってくるが、 その「Array」の部分をどういう表記にするか設定できるビルトインシンボルが実装された。
概要 オブジェクトリテラルが拡張されてプロパティを短く定義できるようになった。
概要 文字列の特定の位置からマッチさせたい時にyフラグを用いると、lastIndexの位置からのみマッチするようにできる。
概要 オブジェクトリテラルが拡張されてメソッドを短く定義できるようになった。
概要 with文に与えたオブジェクトの特定のプロパティがスコープに含まれることを防ぐための、 ビルトイン"unscopables"シンボルが実装された。
概要 V8でジェネレータ周りの実装が進んできたので、解説してみようと思う。
概要 ES2015を象徴する機能である、アロー関数構文の実装がついにV8で始まった。
概要 サロゲートペアを考慮して、String.fromCharCodeとString.prototype.charCodeAtと同じ働きをする String.fromCodePointとString.prototype.codePointAtメソッドが実装された。
概要 ES5までは型付配列で配列のようなメソッドを使うことが出来ず、度々不便なこともあったが、 ES2015から多くの配列と同じメソッドが使えるようになった。
概要 今までV8ではMap、Setコンストラクタの引数付きの呼び出しが正しく実装されていなかったが、この度正しく実装された。 引数にイテラブル(=@@iteratorメソッドを持つ)オブジェクトを渡すことで、それを元に初期化させることができる。
概要 イテレータが期待される場面で呼ばれるビルトイン"iterator"シンボルメソッドが、様々なオブジェクトへ実装された。
概要 V8でES2015のイテレーション周りの実装が進んできたので、解説してみようと思う。
概要 Array.prototype.{values,keys,entries}と同じような要領でコレクションを列挙することができる。 列挙される順序はコレクションに加えた順序と同じであることが保証される。
概要 かつてはfor文初期化句で宣言された変数は、for文の直前で宣言されたように振舞っていたが、各ループでスコープを引きづらないように仕様が変更され、V8も追従した。
概要 ES2015で導入されるObject.isとCollectionのkeyにおいて、何が「同じ」と見なされるのかをまとめてみる。
概要 配列の指定した範囲を、指定した値で満たすことができる、破壊的メソッドである。
概要 Array.prototype.forEachと同じような要領でコレクションを列挙することができる。 列挙される順序はコレクションに加えた順序と同じであることが保証される。
概要 ES2015で導入される機能である、Promise、WeakMap、WeakSetコンストラクタがデフォルトで有効になった。
概要 Object.observeとは、オブジェクトの変更を監視するためのAPIであった。 ES2015,2016の候補として挙げられており、V8でデフォルトで有効にされるまでに至っていたが、 実装コストがかかる上、世のニーズとそれほど合っていないということで結局廃止され…
概要 ES2015ではUndefined、Null、Boolean、Number、String、Objectの6つの型に加えて、新しい型Symbolが導入された。 シンボルはプリミティブ型で、文字列のようにプロパティのキーとして使える特徴を持つ。
実装されたメソッド String.prototype.normalize(form = "NFC") form(初期値:"NFC")の形式で正規化した文字列を返す
概要 MapやSetとは、キーにあらゆる型のあらゆる値を使えるコレクションである。 かつてはキーとして+0と-0を区別していたのだが、区別しないことになり、V8の実装も追従した。