long
ve List<string>
özelliklerine sahip bir nesne döndüren bir WCF hizmet işlemim var. Bir WCF uygulamasında işlemi test ettiğimde, her şey iyi çalışıyor ve değerler doğru. Ancak jQuery ve JSON formatını kullanarak servisi aramam gerekiyor. long
özelliğinin değeri, OnSucceed
işlevinde geri okuduğumda değişiyor.JSON.Stringify() büyük sayılardaki sayısal değeri mi değiştiriyor?
Aradıktan sonra, JSON.stringify
'un büyük değerleri değiştirdiğini buldum. Böyle kodunda Yani:
alert(JSON.stringify(25001509088465005));
... o 25001509088465004
olarak değerini gösterecektir.
Neler oluyor? Burada
Demo: http://jsfiddle.net/naveen/tPKw7/
Lütfen sorunuzun daha net olmasını sağlayın. –
Sadece yukarıdaki javascript kodunu test edin ve neleri gönderdiğinizi ve hangi JSON.stringify'ın geri döndüğünü görün. –
Javascriptlerin hassas sınırı nedeniyle Sayı tipi. Ayrıca bakınız: http://stackoverflow.com/questions/588004/is-javascripts-math-broken – mbarkhau