azu
azu
ラッパーオブジェクト https://github.com/asciidwango/js-primer/issues/196#issuecomment-303274614 https://github.com/asciidwango/js-primer/issues/196#issuecomment-303134241
> JavaScriptの文脈で「クラスを作って、そのインスタンスを作る。」とかいう人までいますし。 > [JavaScript - プロトタイプベースのオブジェクト指向言語が広く使われていない理由は?(77753)|teratail](https://teratail.com/questions/77753 "JavaScript - プロトタイプベースのオブジェクト指向言語が広く使われていない理由は?(77753)|teratail") #168 のやつそういう言い方はするんだけど、コンストラクタからインスタンスを作るという話。 ただしこれは仕様からそういう言い回し、`class` syntaxはコンストラクタを定義する構文という認識。 > 4.3.16Boolean object > member of the Object type that is an instance of the standard built-in...
`...` を Spread演算子 Sprea構文と呼ぶ 突っ込まるとそうですねとしか言いようがないためspread operatorとは呼ばないことにする #420 次のように呼ぶ - 引数: `fn(...args)` : restパラメータ - 配列/文字列: `...array` : spread 構文 - オブジェクト: `{ ...obj }` : spreadプロパティ ``` ECMAScriptの用語としては存在しないけど演算子っぽく見えるのでよく使われている。 ECMAScriptのsyntaxでは `...expression`...
使わない: ローカルスコープ ECMAScriptの用語的にはグローバルスコープはあるけどローカルスコープという対義語っぽいのはでてこない。この本でも"グローバルスコープ"は使うけどローカルスコープは使ってない。 具体的な関数スコープとかブロックスコープという名前にしている。(なのでグローバル ローカル みたいな対比はでてない) 多分これはグローバルスコープと関数スコープしかなかった時のものに広まっていた呼び方、もしくは他の言語でも通じる呼び方なので使われている感じ。 スコープという概念もECMAScriptではEnvironment Record(変数のbindingを記録する場所と操作)がそれに該当するので、スコープという変数があるわけではないという。(まあそれによって形成された領域がスコープという呼ばれ方) Environment Record == Scope - https://tc39.github.io/ecma262/#sec-lexical-environments グローバル ローカルだけだと、モジュールのスコープはどっち?という問題があるのであんまりローカルという言葉が明確出来ないかなというが一つの理由 - https://tc39.github.io/ecma262/#sec-module-environment-records
## Arrow Function以外の関数 関数といったときには関数宣言、関数式、Method definitionとArrow Functionなどがある。 `this`においては、Arrow Functionとそれ以外という分類になってしまうため、「Arrow Function以外の関数」という言葉を使う #316 | 名前 | 関数 | メソッド | | ------------------------------------------- | ---- | ---- | | 関数宣言(`function fn(){}`) | ✔ |...
## ベースオブジェクト > ベースオブジェクトとは「メソッドを呼ぶ際に、そのメソッドのドット演算子またはブラケット演算子のひとつ左にあるオブジェクト」のことを言います。 > つまり、メソッドではない`fn()`のような関数呼び出しにはそもそもベースオブジェクトはありません。 `this` の話で利用している。 #324 #324 元ネタはECMAScriptの[GetBase ( V )](https://tc39.github.io/ecma262/#sec-getbase "GetBase ( V )")から。(`this`の値を決めるときに呼ばれる。Vのベースコンポーネントを取得する関数)
## イベント イベントに関する用語は次の通り。 - イベントをディスパッチする - イベントをリッスンする - イベントが発生した - イベントリスナー (イベントハンドラーではなくリスナー) - リスナー関数 ### 参考 - [refactor: イベントの用語の整理 by azu · Pull Request #488 · asciidwango/js-primer](https://github.com/asciidwango/js-primer/pull/488 "refactor: イベントの用語の整理 by...
## ビルトインオブジェクト - あくまでECMAScriptの定義にあるビルトインオブジェクトをビルトインオブジェクトという - 標準ビルトインオブジェクトとも言えるけど、他のものは出てこないので単にビルトインオブジェクトという - https://tc39.es/ecma262/#sec-built-in-object - https://developer.mozilla.org/ja/docs/Web/JavaScript/Reference/Global_Objects
| 用語 | 意味 | 例 | | ---------- | ---------------------------------------- | ------------------------------------ | | 文字列 | Stringオブジェクトのこと | `"string"` | | 検索文字列 | String#indexOf(検索文字列) など検索対象などに指定した文字列のこと | `"string".indexOf("検索文字列")` | |...
エラーファーストコールバックはtry-catchの自動化はないスタイルと言い換えできる。 逆にunhandled rejectionの概念はないんだな