Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/fortran/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript未定义对象_Javascript_Undefined - Fatal编程技术网

Javascript未定义对象

Javascript未定义对象,javascript,undefined,Javascript,Undefined,我知道检查变量是否未定义的最好方法是 if ( typeof( something ) == "undefined") 我不明白的是何时变量未定义,何时对象未定义。 例如,当我在console.log()中输入一个变量时 Object {detailedView: undefined} 我的问题是为什么我得到这个,而不是一个简单的未定义的 a不是未定义的。它的定义。它是一个物体。该对象恰好包含一个未定义的属性,但变量本身并没有定义 某些东西没有定义,因此它是未定义的一个没有定义。它的定义。

我知道检查变量是否未定义的最好方法是

if ( typeof( something ) == "undefined") 
我不明白的是何时变量未定义,何时对象未定义。 例如,当我在console.log()中输入一个变量时

Object {detailedView: undefined}

我的问题是为什么我得到这个,而不是一个简单的未定义的

a
不是未定义的。它的定义。它是一个物体。该对象恰好包含一个未定义的属性,但变量本身并没有定义


某些东西
没有定义,因此它是
未定义的
一个
没有定义。它的定义。它是一个物体。该对象恰好包含一个未定义的属性,但变量本身并没有定义


有些东西
没有定义,所以它是
未定义的
这里有两个东西:值
未定义的
,这是一个变量在声明但尚未赋值时可以指向的值(即
变量a;
),或者当它被分配了一个实际上没有值或不存在的东西,并且有字符串
“undefined”
,这是一个类似于“monkey”或“collywobble”的字符串

在条件语句中,您正在测试
typeof
运算符的结果是什么,它是字符串“object”或“function”,在本例中是“undefined”。这只是一句话:

if(typeof a == "undefined")
与测试相同

if(a == undefined)

因此,当您对实际对象进行console.log时,您将看到它有一个值
未定义
,而不是一个字符串
“未定义”
,这里有两件事:值
未定义
,这是一个变量在声明但尚未赋值时可以指向的值(即
变量a;
),或者当它被分配了一个实际上没有值或不存在的东西,并且有字符串
“undefined”
,这是一个类似于“monkey”或“collywobble”的字符串

在条件语句中,您正在测试
typeof
运算符的结果是什么,它是字符串“object”或“function”,在本例中是“undefined”。这只是一句话:

if(typeof a == "undefined")
与测试相同

if(a == undefined)

因此,当您在console.log中记录实际对象时,您将看到它有一个值
未定义
,而不是一个字符串
“未定义”
,我相信您是在问“未定义变量”(从未声明的变量)和“未定义值”(变量或属性中的值
未定义
)之间的区别

使用
var
关键字定义/声明变量:

var myVariable;
如果您只是这样做,那么该变量的值是
undefined

console.log(myVariable); // undefined
如果未声明变量,则无法使用它:

console.log(myOtherVariable); // throws a ReferenceError
。。。除了
类型的

typeof myOtherVariable == "undefined"; // true

我相信您是在问“未定义变量”(从未声明的变量)和“未定义值”(变量或属性中的值
undefined
)之间的区别

使用
var
关键字定义/声明变量:

var myVariable;
如果您只是这样做,那么该变量的值是
undefined

console.log(myVariable); // undefined
如果未声明变量,则无法使用它:

console.log(myOtherVariable); // throws a ReferenceError
。。。除了
类型的

typeof myOtherVariable == "undefined"; // true