Qiita記事

ES2015で変数名を取得する

1: Function#nameを使う方法 ES2015では、関数式で宣言した関数が無名関数の場合、代入された変数と同じ名前になる。なので無名関数を変数に代入して、Function#nameで取得すれば変数名の文字列が取得できる。 参考:The names of functions in ES6 無名関数を突っ込んでFunction#nameで取得 var v1 = () => {} console.log(v1.name); //v1 宣言時の変数名のみが関数名...
2018-05-30
Qiita記事

タグ付きテンプレート(tagged template strings)でなんちゃって演算子オーバーロード

はじめに ES2015(ES6)で追加されたタグ付きテンプレート(tagged template strings) 参考:JavaScript の テンプレートリテラル を極める! その実体は特殊な関数 ぱっと見は関数に見えない それをつかって”なんちゃって”演算子オーバーロードをやってみようという記事 ※注:実用性は低いです 前提:「演算子オーバーロード」とは JavaScript(ECMAScript)には無い概念。 参考: wikipedia ...
2018-05-30
Qiita記事

SIMD.jsの型定義ファイルを作ってみた

SIMD.js (ES.next stage3)の記事を書きつつ、実際に試してみるために欲しかったのでSIMD.jsのTypeScript用型定義ファイルを作ってみた。 完成品(ver.0.9.1対応) github やったこと DefinitelyTyped で探す → ない。 Issueが立っていたが特に動きなし。 ドキュメントを探す MDN: 内容が古い。変更無いものは参考になる。 SIMD型について: 貴重な日本語資料。参考になる。 SIMD.js ...
2018-05-30
Qiita記事

SIMD.js (ES.next stage3)

はじめに JavaScript stage 0,1,2,3 Advent Calendar 2015 の記事です SIMD.jsを紹介します 記事執筆時で stage3 の仕様です これはなに JavaScriptで複数のデータを一度に扱ってより高速に処理を行うための新機能(データ型とAPI)です。 1回の命令で複数のデータを並列に処理できるSIMDという手法があります。大抵のCPUは拡張命令としてSIMDに対応しています(MMX, SSE, NEON, etc...)。 SI...
2018-05-30
Qiita記事

System.global (ES.next stage1)

はじめに JavaScript stage 0,1,2,3 Advent Calendar 2015 の記事です System.globalを紹介します 記事執筆時で stage1 の仕様です これはなに JS実行環境によってまちまちな名前を付けられている the global object (グローバルオブジェクト)をどんな環境でも一意の名前で取得できるようにするためのものです。 System.global; ※「グローバルオブジェクト(the global object...
2018-05-30