Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/371.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 无法获取===string.length以正常工作_Javascript_Jquery - Fatal编程技术网

Javascript 无法获取===string.length以正常工作

Javascript 无法获取===string.length以正常工作,javascript,jquery,Javascript,Jquery,我有代码检查用户是否在输入字段中输入了文本。如果字段为空,我想显示:您尚未启动 如果字段的长度大于1-我想显示:you have finished。下面的代码用于确定用户何时完成,但不显示任何内容表示您尚未开始。有什么想法吗?谢谢 HTML: 元素中的空白包含在其文本值中。元素以单个空白字符开头,因此它的长度始终为length>0 修剪文本以避免空白,因此可以使用本机JavaScript方法 var progress = $("#progressDisplay").text().trim();

我有代码检查用户是否在输入字段中输入了文本。如果字段为空,我想显示:您尚未启动

如果字段的长度大于1-我想显示:you have finished。下面的代码用于确定用户何时完成,但不显示任何内容表示您尚未开始。有什么想法吗?谢谢

HTML:


元素中的空白包含在其文本值中。元素以单个空白字符开头,因此它的长度始终为
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:乐意帮助:)