Quelle est la bonne façon de vérifier si une variable globale existe?

JSLint ne passe pas de ce qu'un code valide:

/* global someVar: false */
if (typeof someVar === "undefined") {
    var someVar = "hi!";
}

Quelle est la bonne façon?

  • Notez que le var n'est pas portée à la if bloc. C'est comme si vous aviez écrit var someVar au-dessus de la if. Ref: developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/...
  • Descendit un lapin énorme trou après avoir lu seulement le code dans les réponses ici, et non dans la question. Si vous voulez écrire du code qui fonctionne sur Nodejs et le navigateur, c'est la bonne façon de vérifier si une variable n'est pas définie, indépendamment de ce que JSLint peut penser.