假设有一个文本内容为
Clark, Theodore S.
的元素。请注意“Theodore”后面的双空格。假设您将此元素作为 HTML 选项,如下所示:<option>Clark, Theodore S.</option>
。如果您尝试提取其文本内容,您将正确获得结果Clark, Theodore S.
。但是,如果您尝试获取该选项的 value
属性,您将获得 Clark, Theodore S.
。
根据 MDN 的文档,格式化 DOM 时常常会忽略空格。但是,让
textContent
属性返回修剪后的值而 value
属性返回精确值不是合乎逻辑的吗?据我所知,当你获取输入元素的 value
时,不会执行任何修剪操作,那么为什么要在这里进行修剪呢?
当预期
value
属性能够最准确地反映实际值集时,为什么要以任何方式修改它?这是 JavaScript 中的错误还是明确有意为之?