Google Chrome中出现意外令牌ILLEGAL javascript错误

时间:2010-01-28 19:35:58

标签: javascript json google-chrome webkit

我收到一个javascript(prototype.js)错误:此行代码中出现意外的令牌ILLEGAL:

newFriend = new friend(
    response[0].@items[0]._id, 
    response[0].@items[0]._nickName, 
    response[0].@items[0]._profilePicture, 
    response[0].@items[0]._tagLine, 
    response[0].@items[0]._isInvite, 
    response[0].@items[0]._confirm
);

响应对象如下所示:

[{"@type":"[Lcom.photoviewer.common.model.ThinUser;","@items":[{"_id":"000.060318.05022007.00263.0067ur","_nickName":"siraj","_country":null,"_currentStorageLimit":5000000000,"_currentStorage":0,"_currentFileCount":0,"_profilePicture":null,"_tagLine":null,"_membershipLevel":0,"_isRejected":false,"_isInvite":false,"_confirm":false,"_verifiedOn":1170716666000}]}]

这只发生在Google Chrome浏览器和其他webkit浏览器中。它在Firefox中运行良好。

2 个答案:

答案 0 :(得分:8)

请改为尝试:

newFriend = new friend(
    response[0]["@items"][0]._id, 
    response[0]["@items"][0]._nickName, 
    response[0]["@items"][0]._profilePicture, 
    response[0]["@items"][0]._tagLine, 
    response[0]["@items"][0]._isInvite, 
    response[0]["@items"][0]._confirm
);

我很确定@给你一个问题。

对于奇怪的字符,使用["@items"]表示法而不是(点)表示法.@items总是更安全。

答案 1 :(得分:0)

包含@和点表示法的媒体资源名称在Chrome中不兼容。请改用square bracket notation(在构造对象时已经这样做了。)