В JavaScript существует пустой указатель и существует не определено . У них есть различные значения.
состояния Marijn Haverbeke, в его бесплатной, книге онлайн" Красноречивый JavaScript" (шахта акцента):
существует также подобное значение, пустой указатель, значение которого является 'этим значением, определяется, но это не имеет значения'. Различие в значении между неопределенным и пустым является главным образом академическим, и обычно не очень интересным. В практических программах, часто необходимо проверить, имеет ли что-то 'значение'. В этих случаях выражение что-то == неопределенный может использоваться, потому что, даже при том, что они не точно то же значение, пустой указатель == неопределенный произведет верный.
Так, я предполагаю лучший способ проверить, было ли что-то не определено, будет:
if (something == undefined)
Hope это помогает!
Редактирование: В ответ на Ваше редактирование, свойства объектов должны работать тот же путь.
var person = {
name: "John",
age: 28,
sex: "male"
};
alert(person.name); // "John"
alert(person.fakeVariable); // undefined
Да - GM_setValue .
Этот метод позволяет авторам пользовательских скриптов сохранять простые значения при загрузке страниц. Строки, логические значения и целые числа в настоящее время являются единственными разрешенными типами данных