我有一个代码,我将在下面给出一个小例子。尽管它的作用是获取用户名,然后检查其他上下文。然后我将它们相互比较,除了这一点之外,我的整个脚本都有效,并且没有留下任何余地。
var getName= $('#element').text(),
uName =getName.replace("Welcome ",""),
loggedIn = newMember.replace(membersList,"");
if(loggedIn !== uName)
{
//run other codes
}
尽管当我这样做时,它仍在运行代码。我的条件写错了吗?
最佳答案
从您的问题标题来看,我假设您担心的是 loggedIn !== uName
的字符串比较受到其中一个前导和/或尾随空格的影响。
您需要使用 trim()
,并且明智的做法是在使用原型(prototype)之前验证原型(prototype)是否存在(有关说明,请参阅 this answer)。
您的代码现在是:
if(!String.prototype.trim) {
String.prototype.trim = function () {
return this.replace(/^\s+|\s+$/g,'');
};
}
var getName= $('#element').text(),
uName =getName.replace("Welcome ","").trim(),
loggedIn = newMember.replace(membersList,"").trim();
if(loggedIn !== uName)
{
//run other codes
}
关于javascript - 检查单词是否与空格匹配,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16727233/