如何解码JavaScript变量中的特殊字符?

时间:2014-10-16 02:20:17

标签: javascript jquery decode encode

这就是我所拥有的:

            url: "http://someurl.com/' + variable.id + '/page.html",

当页面呈现时,我收到一个如下所示的控制台错误:

http://someurl.com/'%20+%variable.id%20+%20'/page.html

这可以防止某些API调用发生。我该怎么做以确保它被读作?

http://someurl.com/variable.id/page.html

其中variable.id实际上是一个值而不是一个变量。

3 个答案:

答案 0 :(得分:1)

您的引号不匹配会导致您的字符串语法被破坏。这导致单引号,空格,加号和变量名在字符串中,而不是作为JS语句进行求值和执行。

你需要:

url: "http://someurl.com/" + variable.id + "/page.html",

请注意删除加号前后的单引号,并在双引号的位置插入与您在汇编的网址的开头和结尾处使用的双引号匹配。

字符串必须以相同类型的引号开头和结尾。同样有效的是:

url: 'http://someurl.com/' + variable.id + '/page.html',

url: "http://someurl.com/" + variable.id + '/page.html',

url: 'http://someurl.com/' + variable.id + "/page.html",

由于每个字符串都使用一组匹配的引号,无论您使用哪种字符。

答案 1 :(得分:1)

你的意思是(注意双引号)?:

url: "http://someurl.com/" + variable.id + "/page.html"

答案 2 :(得分:0)

你好,你在sintaxis上错了。

你可以使用:

 var url = "http://someurl.com/";
 url += variable.id + "page.html";
 document.location.href = url;
祝你好运!!