繁体   English   中英

这个Javascript中的语法错误在哪里

[英]Where is the syntax error in this Javascript

这是代码:

    var disqus_title="UnicodeDecodeError - ordinal not in range(128)";
    var disqus_identifier="cache\yazilar\python\unicode-decode-error-ordinal-not-in-range.html";
    var disqus_config = function () {
        this.language = "tr";
    };

Chrome的调试工具建议disqus_identifier行中存在语法错误,但我找不到它。 我在所有页面中都使用了相同的代码,只有这一个会出错。

您需要将字符串常量中的反斜杠加倍。

var disqus_identifier="cache\\yazilar\\python\\unicode-decode-error-ordinal-not-in-range.html";

确保您确实需要那些反斜杠而不是正斜杠字符可能是个好主意。 如果您要将路径传递回服务器,而服务器只是盲目使用它,那可能是一个相当讨厌的安全问题。

反斜杠\\是javascript中的转义字符。 如果要在字符串中使用反斜杠,则必须使用另一个反斜杠对其进行转义。

var disqus_identifier="cache\\yazilar\\python\\unicode-decode-error-ordinal-not-in-range.html";

\\u\u003c/code>表示Unicode转义。 它必须后跟4个十六进制字符。

您可能应该用\\\\替换\\字符(用于将\\表示为数据的转义序列)或(由于您看上去像一个相对URI)使用/代替。

var disqus_identifier =“ cache \\ yazilar \\ python \\ unicode-decode-error-ordinal-not-in-range.html”;

单反斜杠使脚本编译器混乱。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM