MDN wants to learn about developers like you: https://qsurvey.mozilla.com/s3/MDN-dev-survey

void 演算子は与えられた式 (expression) を評価し、undefined を返します。

構文

void expression

説明

この演算子は、「戻り値が undefined であってほしい場所に、それ以外の戻り値を持つ式を挿入したい場合」に有用です。

void 演算子は単にプリミティブ値 undefined を得る目的でしばしば使われ、一般的に "void(0)" と書かれます(これは "void 0" と等価です)。この目的であれば、代わりに値が undefined の変数、未定義のグローバル変数などを使用する事もできます。

即時実行関数式を使用するとき、 void は、function キーワードを宣言の代わりに式として扱うように強制するために使用できます。

void function iife() {
    var bar = function () {};
    var baz = function () {};
    var foo = function () {
        bar();
        baz();
     };
    var biz = function () {};

    foo();
    biz();
}();

JavaScript URI

javascript: から始まる URI をサポートしたブラウザに於いて、それは、URI 内のコードを評価し、戻り値が undefined でなければ、返された値にページコンテンツを置き換えます。void 演算子は、undefined を返すために使用できます。たとえば:

<a href="javascript:void(0);">
  Click here to do nothing
</a>

<a href="javascript:void(document.body.style.backgroundColor='green');">
  Click here for green background
</a>

但し、javascript: 疑似プロトコルはあくまで控えめなイベントハンドラなどの代替であり、積極的に使用するべきではないでしょう。
【訳注: しかしながらこれは、戻り値を必要としないブックマークレットの作成の際などに役立つ場合があります。】

仕様

仕様 ステータス コメント
ECMAScript 2017 Draft (ECMA-262)
The void Operator の定義
ドラフト  
ECMAScript 2015 (6th Edition, ECMA-262)
The void Operator の定義
標準  
ECMAScript 5.1 (ECMA-262)
The void Operator の定義
標準  
ECMAScript 3rd Edition (ECMA-262)
The void Operator の定義
標準  
ECMAScript 1st Edition (ECMA-262)
The void Operator の定義
標準 初期定義。JavaScript 1.1 で実装。

ブラウザ実装状況

機能 Chrome Firefox (Gecko) Internet Explorer Opera Safari
基本サポート (有) (有) (有) (有) (有)
機能 Android Chrome for Android Firefox Mobile (Gecko) IE Mobile Opera Mobile Safari Mobile
基本サポート (有) (有) (有) (有) (有) (有)

関連項目

ドキュメントのタグと貢献者

 このページの貢献者: YuichiNukiyama, lv7777, coeurl, teoli, ethertank
 最終更新者: YuichiNukiyama,