使用$(this).text从HTML页面读取标签并将其与相同的字符串进行比较时,返回false。
var readText = $(this).text(); // assume $(this).text() reads 1234 for you
readText === "1234" //this return false
为什么会这样?另外如何修复此比较将返回true。
答案 0 :(得分:3)
因为1234
是一个整数,"1234"
是一个字符串。如果使用===
运算符,则检查它们是否具有相同的值+相同的类型。如果您只是想检查它们是否具有相同的值,请使用==
有关JavaScript比较运算符的更多信息:http://www.w3schools.com/js/js_comparisons.asp
如果$(this).text()
是一个字符串,则应该$(this).text().trim
。这将删除空格和换行符,这可能导致比较返回false
答案 1 :(得分:0)
不确定你对此是否正确。
这个简单的小提琴另有说法:http://jsfiddle.net/e7nKP/1/
js是这样的:
$(function () {
var readText = $('#foo').text();
console.log(readText === "1234");
});
其中#foo
是一个简单的div,内容为1234。