function() {
var id1 = document.getElementById("usrEmailId").value
var id2 = document.getElementById("usrEmailIdSecondary").value
var id3 = document.getElementById("emailId").value
}
在这里,在HTML页面上,我有电子邮件ID捕获字段。有两页,一页只有usrEmailId
和usrEmailIdSecondary
元素,另一页有usrEmailId
和emailI
元素。那么在第一页的情况下,变量id3
会发生什么。什么将存储在其中? (NULL,未定义或空)?
如果该元素不存在且getElementById
返回null
,则根本不会存储任何内容,因为尝试访问.value
上的null
属性将会抛出异常。
什么将存储在其中?
简短回答:没什么。
它将抛出错误,如“无法获取null值”,并且代码执行在此处停止。
var id1 = document.getElementById("usrEmailId").value; // <---if doesn't exist
console.log('Log it if id1 is null.'); // <---it won't happen
在javascript控制台上生成错误。检查此代码段
function foo() {
var id1 = document.getElementById("Email1").value
console.log(id1);
}
<body>
<input type="text" id="Email">
<input type="text" id="pwd">
<button onClick=foo()>Try</button>
</body>
尝试运行代码,你会发现无论何时调用getElementById("Email1").value
而无法读取控制台上出现的null属性'value',因为页面中不存在id Email1
。
如果控制台输出未出现在屏幕上,请打开开发人员工具/ Inspect> Console。