超まとめ バックボタンで戻ったときにフォームの状態を忘れていて欲しい場合は、onpageshowイベントでreset()するといい感じ。 説明 ChromeやFirefoxでフォーム入力してSubmitとかして次の画面に…
超まとめ ES6のREPL環境(対話実行環境)をさっさと作るには、babel-nodeを使うのがよさげです。 手順 node.jsをインストールします。 Windowsの場合はインストーラー(msi)一発です。 babe…
Javascriptには0と-0があるようです。 等価なので、安心してOK。 toString()すると、両方とも”0″になります。 上記はchromeの結果ですが、Firefoxでも同じでした。
関数スコープ内でvarで宣言しない変数に値を代入すると、グローバルスコープのプロパティとして定義されます。 1つめのhogeではmoge関数内で値代入したmageがグローバルスコープに定義されています(変数ではなくプロパ…
JavaScriptにはブロックスコープがありません。 下図の例では、ifブロック内で宣言している変数xに、ブロック外からもアクセスできています。 これがブロックスコープを持つ言語~例えばC#~なら、エラーです。 正しく…
JavaScriptで配列の要素をdeleteしても、その要素がundefinedになるだけです。 配列の長さは維持され、その要素に再度値を設定することができます。 要素にundefinedを代入するのと結果はあんまり変…
上記リテラル宣言は下記newによる宣言と同じ意味。 この場合はプリミティブ値なので下記newと全く同じというわけではないが、概ね同じ。
Javascriptでnullをtypeofすると”object”が返ってきます。なんでなんだろうね。 ちなみに、undefinedは”undefined”が返ってきます。
(1)の結果を見るに、オブジェクト同士の比較は、==,===のどちらを使っても参照を比較するらしいです。(2)は実質 なので、(1)も のように動作するのかと思ったら、そうじゃありませんでした。
入れ子にした関数内でthisを参照した際の参照先はなんかおかしい。要注意です。 ECMAScript3では グローバルオブジェクトを指します。(え 下図はchromeですが、func2およびfunc3でのthisがwin…