Javascript 两个URL的字符串比较失败

Javascript 两个URL的字符串比较失败,javascript,jquery,string,Javascript,Jquery,String,我有一个非常简单的字符串比较,但是检查总是失败。我正在尝试加载在=768&&width=960){ if(image.attr('src')!=image.data('desktop src'){ log('resizedesktop'); image.attr('src',image.data('desktop src'); } } }; 现在,我想做的是,不要替换src,如果宽度保持在边界内。我试图通过检查src属性是否已经具有该data属性来实现这一点,但是字符串检查失败,因为它总是不相

我有一个非常简单的字符串比较,但是检查总是失败。我正在尝试加载在
=768&&width<960)中加载的不同图像{
if(image.attr('src')!=image.data('tabletsrc'){
log('resizetablet');
image.attr('src',image.data('tabletsrc');
}
}否则如果(宽度>=960){
if(image.attr('src')!=image.data('desktop src'){
log('resizedesktop');
image.attr('src',image.data('desktop src');
}
}
};
现在,我想做的是,
不要替换src,如果宽度保持在边界内
。我试图通过检查
src
属性是否已经具有该
data
属性来实现这一点,但是字符串检查失败,因为它总是不相等,尽管这两个属性在Chrome Inspector中是相同的。为什么会发生这种情况


顺便说一下,这两个字符串都是图像的URL。

您可以检查src是字符串原语还是字符串()


为什么在控制台日志后加上括号

new String("hi") == new String("hi");  // false 

我检查了比较
src
data
attrs,它们匹配。除非您的图像没有标记为
数据电话src=”“
等,否则我认为这条线会阻止设置src。

问题是,我在每个if语句后面都有一个狡猾的分号。。。删除了它们,它就工作了。

什么是
console.log(image.attr('src')、image.data('phone src'))
print?在每次比较之前添加一些带标签的调试语句,例如console.log('debug1',image.attr('src')、image.data('phone src');通过这种方式,您可以检查执行了哪个“if”分支,以及比较了哪些值。@ÁlvaroG.Vicario“src”打印一个可单击的链接,
数据
打印一个不可单击的链接。除此之外,它是相同的URL。如果它是可点击的,它可能是一个对象而不是一个字符串。当我分别记录它们时,它们都是可点击的链接。但是URL是完全相同的。如果我复制粘贴它们并将它们放在字符串中并进行比较,检查就会起作用。对不起,更新了我的答案,因为我最初误解了这个问题。
new String("hi") == new String("hi");  // false 
console.log( 'resize phone' ));