javascript - 为什么将输入值设置为 undefined 不为空呢?

标签 javascript input

如以下示例所示:

document.getElementById('test1').value = null;
document.getElementById('test2').value = undefined;
<input id="test1" value="DEFAULT TEXT" />
<input id="test2" value="DEFAULT TEXT" />

输入的值在设置为 null 时会重置,但为什么在设置为 undefined 时也不会重置?

为什么它将值设置为字符串 "undefined" 而不是?

最佳答案

.value 是一个字符串并且需要一个字符串,因此清空它的正确方法是使用空字符串:

 /*...*/.value = "";

分配 undefined 将导致它被字符串化,这导致 "undefined",而 null 不能被字符串化,因此 spec 表示,将 null 分配给 .value 就像使用空字符串一样。

关于javascript - 为什么将输入值设置为 undefined 不为空呢?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54371503/

相关文章:

python - 如何从 python 中的后台线程读取键盘输入?

javascript - 如何将条件 PHP if 短语更改为 JS?

javascript - 如何将每个对象与对象?

javascript - 将 Knockout 与 Datatables Ajax 源结合使用

javascript - 在node.js中顺序运行多个异步函数

javascript - 响应式 JavaScript – 加载/隐藏与浏览器宽度相关的特定功能?

jQuery 更改占位符文本颜色

html - 使用 CSS 在密码字段中圈出

c - 如何从包含字符串和整数的文件中获取输入?

input - 读取模式匹配分支中的输入