【发布时间】:2016-07-26 00:39:09
【问题描述】:
在我看来,'mars%22%3A%22' 和 "mars%22%3A%22" 是等价的,因为没有任何东西被转义。
我创建一个 javscript 小书签已经有一段时间了。有一次,它在按原样粘贴到 Chrome 中的书签时停止工作。
经过多次猜测和检查,我发现了一个解决方案:
一对双引号必须是单引号。为什么?
以下在 split() 中带有单引号的行不会导致小书签出现问题:
loadDoc("/page1/" + aArray[i].href.split('mars%22%3A%22')[1].slice(0,7),i);
下面所有双引号的行将导致书签根本不运行:
loadDoc("/page1/" + aArray[i].href.split("mars%22%3A%22")[1].slice(0,7),i);
控制台中没有显示错误。
请注意,如果直接粘贴到 javascript 控制台,双引号版本将运行良好!
我不明白什么?
【问题讨论】:
标签: javascript string google-chrome quotes bookmarklet