Javascript 无法获取===string.length以正常工作
我有代码检查用户是否在输入字段中输入了文本。如果字段为空,我想显示:您尚未启动 如果字段的长度大于1-我想显示:you have finished。下面的代码用于确定用户何时完成,但不显示任何内容表示您尚未开始。有什么想法吗?谢谢 HTML:Javascript 无法获取===string.length以正常工作,javascript,jquery,Javascript,Jquery,我有代码检查用户是否在输入字段中输入了文本。如果字段为空,我想显示:您尚未启动 如果字段的长度大于1-我想显示:you have finished。下面的代码用于确定用户何时完成,但不显示任何内容表示您尚未开始。有什么想法吗?谢谢 HTML: 元素中的空白包含在其文本值中。元素以单个空白字符开头,因此它的长度始终为length>0 修剪文本以避免空白,因此可以使用本机JavaScript方法 var progress = $("#progressDisplay").text().trim();
元素中的空白包含在其文本值中。元素以单个空白字符开头,因此它的长度始终为
length>0
修剪文本以避免空白,因此可以使用本机JavaScript方法
var progress = $("#progressDisplay").text().trim();
var progress = $.trim($("#progressDisplay").text());
或者使用方法
var progress = $("#progressDisplay").text().trim();
var progress = $.trim($("#progressDisplay").text());
元素中的空白包含在其文本值中。元素以单个空白字符开头,因此它的长度始终为
length>0
修剪文本以避免空白,因此可以使用本机JavaScript方法
var progress = $("#progressDisplay").text().trim();
var progress = $.trim($("#progressDisplay").text());
或者使用方法
var progress = $("#progressDisplay").text().trim();
var progress = $.trim($("#progressDisplay").text());
为什么不用别的?看小提琴
为什么不用别的?看小提琴
这是因为在
中有空白:
此空白将计为文本,并将在获取段落的.text()
时拾取
更好的方法是手动删除空白或使用不包含空白的.trim()
方法
还有一点比较:
==
比较变量的类型
,以及它的值。例如:
2==2
将为真2==“2”
将为false(一个是整数,一个是字符串)
如果不想比较类型而只比较值,请使用:
=
这是因为在
中有空白:
此空白将计为文本,并将在获取段落的.text()
时拾取
更好的方法是手动删除空白或使用不包含空白的.trim()
方法
还有一点比较:
==
比较变量的类型
,以及它的值。例如:
2==2
将为真2==“2”
将为false(一个是整数,一个是字符串)
如果您不想比较类型而只想比较值,请使用:
=
这是正确的,但它不会回答问题。代码与原始代码100%相同。如果有两个“如果”,它就不会进入另一个“如果”,所有这些都会改变performance@PranavCBalan感谢您的澄清,第一个提出有效意见的人。@AdambuchanTransmisth:实际上空白是个问题here@AndrewLeonardi这就是为什么尽管投了反对票,我还是坚持自己的答案。可能不是最好的“答案”,但值得一提。这是真的,但它没有回答问题。代码与原始代码100%相同。如果有两个“如果”,它就不会进入另一个“如果”,所有这些都会改变performance@PranavCBalan感谢您的澄清,第一个提出有效意见的人。@AdambuchanTransmisth:实际上空白是个问题here@AndrewLeonardi这就是为什么尽管投了反对票,我还是坚持自己的答案。这可能不是最好的“答案”,但值得一提。当进行更改时,检测代码在哪里?代码不能继续运行。当进行更改时检测的代码在哪里?代码没有继续运行。@epascarello:当用户完成但未显示任何内容表示您尚未开始时。@AndrewLeonardi:乐意帮助:)@epascarello:当用户完成但未显示任何内容表示您尚未开始时。@AndrewLeonardi:乐意帮助:)