/ / अप्रत्याशित टोकन ILLEGAL .. कहीं - कहीं कॉफ़ीस्क्रिप्ट

अप्रत्याशित टोकन ILLEGAL .. कहीं - कॉफ़ीस्क्रिप्ट

addToBasket = (id, qty) ->
if $.cookie("basket")?
# Basket exists
basket = $.parseJSON($.cookie("basket"))
basket.push( { "id": id, "qty": qty } )
$.cookie("basket", JSON.stringify(basket))
else
# Basket doesn"t exist
alert "Creating basket"
basket = JSON.parse([{"id": id, "qty": qty}])
$.cookie("basket", JSON.stringify(basket))

मैं अपने बालों को फाड़ रहा हूँ, मुझे नहीं मिल रहा है(संकलित समतुल्य) फ़ंक्शन को चलाने के लिए, हमेशा अवैध टोकन त्रुटि प्राप्त करना। मैंने दुष्ट, अदृश्य पात्रों के लिए जाँच की है और वहाँ सीआर / एलएफ के अलावा कुछ भी नहीं है।

उत्तर:

उत्तर № 1 के लिए 1

आप कॉल कर रहे हैं JSON.parse एक सरणी पर, जो स्पष्ट रूप से ब्राउज़रों को लागू करने के तरीके के कारण एक सामान्य अपवाद के बजाय सिंटैक्स त्रुटि के रूप में योग्य है। आप अनिवार्य रूप से ऐसा कर रहे हैं:

JSON.parse([{id: 123}].toString())

जो निम्नानुसार है:

JSON.parse("[object Object]")

जो अवैध JSON है, इसलिए त्रुटि।