構文
真偽値
true/false
true扱い
値 |
型 |
{}/[] |
オブジェクト/配列 |
“hoge” |
文字列 |
1/-1 |
数値 |
true |
真偽値 |
undefined == null |
式 |
false扱い
値 |
型 |
"" |
文字 |
0 |
数値 |
false |
真偽値 |
undefined |
undefined |
null |
null |
undefined及びnullの識別
undefined == null
はtrueとなるため、 == null
で識別可能。
文字列などを真偽値で返却
let a = ""
とした時、a ? true : a
は、false
ではなく""
が返却される。
mixin
- ECMAScriptは、多重継承ができないため、
親クラス
と子クラス
の間に中間となるクラスを関数経由で用意する事によりmixinを実現する。
以下にFoo
を親クラスとするmixin例を示す。
class Foo {
calc() { console.log("Foo"); }
}
let barMixin = Base => class extends Base {
calc() { console.log("bar"); }
};
class Baz extends barMixin(Foo) {}
let baz = new Baz();
baz.calc();
// output is "bar"
参考