/ / Uncaught SyntaxError: Nieoczekiwany token NIELEGALNY podczas zwracania symbolu £ za pomocą JSON - jquery, json

Uncaught SyntaxError: Niespodziewany token NIELEGALNY podczas zwracania symbolu £ za pomocą JSON - jquery, json

Kiedy próbuję zwrócić symbol £ z połączenia JSON, pojawia się błąd w chrome: Uncaught SyntaxError: Nieoczekiwany token ILLEGAL

var currency = "";
var price = "";


$.ajax({
type: "GET",
url: "../JSONDeliveryPrice/",
dataType: "json",
success: function (data) {
price = eval(data.price);
currency = eval(data.currency);
},
async: false
});
console.log(price);
console.log(currency);

waluta powinna być równa "£", ale zamiast tego dostaję ten błąd. Czy muszę jakoś zakodować / odkodować wartość? Ponadto, ceny wyjściowe poprawnie, jeśli wrócę tylko cena.

EDYTOWAĆ:

public virtual ActionResult JSONDeliveryPrice()
{
string currency = "£";
decimal price = 123;
return Json(new { price = price, currency = currency }, JsonRequestBehavior.AllowGet);
}

Odpowiedzi:

2 dla odpowiedzi № 1

Nie potrzebujesz tego eval() jak już określiłeś typ danych jako JSON (jQuery zrobi dla Ciebie JSONyfikujący. Możesz po prostu:

...
success: function (data) {
price = data.price;
currency = data.currency;
},
...