var声明中未终止的字符串文字错误

时间:2013-10-15 10:13:39

标签: javascript

我已声明var:

var myid=mydata.id;    
var imgpath="https://graph.facebook.com/<?=myid ?>/picture?type=small";

给出错误:

SyntaxError: unterminated string literal
var imgpath="https://graph.facebook.com/<br />`

我已经终止了它! 人才在哪里?

完整的功能:

FB.api('/me?fields=movies,email', function(mydata) {
            console.log(mydata.email);
           console.log(mydata.id); 
           var myid=mydata.id;
           var imgpath="https://graph.facebook.com/<?=myid ?>/picture?type=small";
           //console.log(imgpath);  ....}

2 个答案:

答案 0 :(得分:2)

<?=myid ?>是未定义的常量,由PHP解释为字符串。但在此之前,PHP将使用少量新行打印错误。

JS不喜欢字符串中的新行,因此会产生错误。

如果你想使用以前定义的JS var,你必须像这样使用它:

var imgpath = "https://graph.facebook.com/" + myid + "/picture?type=small";

答案 1 :(得分:1)

试试这个

var imgpath="https://graph.facebook.com/"+myid +"/picture?type=small";