If Not (oResponse.selectSingleNode("BigGroupType") Is Nothing) Then
End If
我需要将其转换为javascript。这足以检查null
吗?
这是我的主要回答,请确认一下,
if(typeof $(data).find("BigGroupType").text() != "undefined" && $(data).find("BigGroupType").text() != null) {
}
答案 0 :(得分:12)
JavaScript有两个值,表示“无”,undefined
和null
。 undefined
比null
具有更强的“无”含义,因为它是每个变量的默认值。除非设置为null
,否则变量不能为null
,但默认情况下变量为undefined
。
var x;
console.log(x === undefined); // => true
var X = { foo: 'bar' };
console.log(X.baz); // => undefined
如果您想查看某些内容是否为undefined
,则应使用===
,因为==
不足以将其与null
区分开来。
var x = null;
console.log(x == undefined); // => true
console.log(x === undefined); // => false
但是,这可能很有用,因为有时您想知道某些内容是undefined
还是 null
,因此您可以if (value == null)
来测试是否它要么是。
最后,如果要测试变量是否存在于范围中,可以使用typeof
。在测试旧版浏览器中可能不存在的内置插件时,这可能很有用,例如JSON
。
if (typeof JSON == 'undefined') {
// Either no variable named JSON exists, or it exists and
// its value is undefined.
}
答案 1 :(得分:2)
您需要同时检查null
和undefined
,这隐式会这样做
if( oResponse.selectSingleNode("BigGroupType") != null ) {
}
相当于:
var node = oResponse.selectSingleNode("BigGroupType");
if( node !== null &&
node !== void 0 ) {
}
void 0
是获得undefined
答案 2 :(得分:1)
这个逻辑:
If Not (oResponse.selectSingleNode("BigGroupType") Is Nothing)
可以用JavaScript编写:
if (typeof oResponse.selectSingleNode("BigGroupType") != 'undefined')
Nothing
等于undefined
,但由于多种原因不推荐检查undefined
,使用typeof
通常更安全。
但是,如果selectSingleNode
可以返回其他有价值的值,例如null
,那么只需做一个简单的检查就可以了,如果它是真的:
if (oResponse.selectSingleNode("BigGroupType"))
答案 3 :(得分:0)
在JavaScript中等效于Nothing undefined
if(oResponse.selectSingleNode("BigGroupType") != undefined){
}
答案 4 :(得分:0)
JavaScript的: -
(document.getElementById(“BigGroupType”) == undefined) // Returns true
JQuery的: -
($(“#BigGroupType”).val() === “undefined”) // Returns true
在上面的示例中注意,undefined是JavaScript中的关键字,在JQuery中它只是一个字符串。