Javascript 元素之间的差异。值==="&引用;和Element.length==0
我很确定这对大多数人来说都是显而易见的,但不知怎么的,我一直在思考这个问题。请仁慈一点;) 我意识到Javascript 元素之间的差异。值==="&引用;和Element.length==0,javascript,Javascript,我很确定这对大多数人来说都是显而易见的,但不知怎么的,我一直在思考这个问题。请仁慈一点;) 我意识到Element.value返回一个String,而Element.length返回一个Int,但我仍然不确定这两个方法是否返回相同的值(参见示例) 玩具示例 我有下面的输入框 <input id="myInput" type="text" value=""> y值应该是0,但是x值应该是什么空值或0 换言之,我会的 Element.value===”和Element.length==
Element.value
返回一个String
,而Element.length
返回一个Int
,但我仍然不确定这两个方法是否返回相同的值(参见示例)
玩具示例
我有下面的输入框
<input id="myInput" type="text" value="">
y
值应该是0
,但是x
值应该是什么<代码>空值或0
换言之,我会的
Element.value===”
和Element.length==0
表示相同的内容?Element.value
返回允许用户输入的元素的字符串。该属性由系统提供<代码>元素。长度不是属性
JavaScript中的其他各种对象都有一个属性length
Array
s,所有ArraySih对象都具有length
属性。它们返回数组的长度。一个数组示例是节点列表。这是一个元素列表。例如,函数getElementsByTagName
返回一个节点列表。您可以使用length
检索此列表的长度。string对象还有一个length属性(string.prototype.length
)。它返回字符串的长度。(字符串也是数组的一种)。请参见此示例:
alert("test"[0]);
这将提醒t
。因此,您可以在字符串中循环,就像它在数组中一样
总之:
Element.value==”和Element.length==0
是不同的,因为它们彼此不相关Element.value===”
和Element.value.length===0
几乎做同样的事情。第一个检查返回的字符串是否为空,而第二个检查该字符串的长度。在这两种情况下,字符串的长度都是0
元素。长度将是未定义的
,因为它不是属性。看这里
var属性=[];
var myObject=document.getElementById(“myInput”);
for(myObject中的变量名称){
if(myObject.hasOwnProperty(名称)){
properties.push(名称);
}
}
警报(properties.filter)(函数(值){
返回值&&value.length>0&&value[0]=“l”;
}).join(“\n”)代码>
此语句将为您提供未定义的
。因为长度是数组、字符串和对象的属性。您无法在html对象上实现长度属性
如果您不向文本字段输入任何文本,y将为零。否则,它将提供您在文本字段中写入的值。如果您想要输入字符串的长度,请尝试x.value.length
他们不需要。要获得字符串的长度,您必须询问元素.value.length
。DOM元素没有属性length
,因此您得到了未定义的。如果您得到了length
的一个数字,则表示您得到了一个数组(DOM元素)。感谢您的帮助输入!
alert("test"[0]);
var x = document.getElementById("myInput").length;