簡體   English   中英

javascript-我的客戶端選項是什么?

[英]javascript - What are my client-side options?

我喜歡javascript,請不要誤會我的意思,但是我的問題是我目前想開發用於科學計算的開源Web應用程序,而javascript的算法並不是最精確的。 我已經在服務器端編寫了腳本,但是我更喜歡客戶端,這是顯而易見的原因,即用戶的體驗通常更流暢,並且服務器上的負載更少。

關於解決此問題,我有哪些選擇? 我讀過某個地方,您可以在javascript之上實現語言-這值得嗎?它看起來像什么? 例如,如果我在javascript上實現python,這是否意味着客戶端需要python解釋器才能使用該網站?

我無法應付

0.1 + 0.2 == 0.3 // is False

浮點運算是近似計算

這沒錯,請查看更多信息

怪異的編程行為

這不是專門針對javascript,而是在整個編程中很常見

這是我在chrome上得到的:

0.1 + 0.2 = 0.30000000000000004;

這是關於該主題的簡單但出色的閱讀:

每個程序員應該了解的浮點運算法則

為什么我的數字(例如0.1 + 0.2)加起來不是一輪好0.3,而是得到一個像0.30000000000000004這樣的怪異結果?

因為在內部,計算機使用的格式(二進制浮點數)根本無法准確表示一個數字,例如0.1、0.2或0.3。

編譯或解釋代碼時,“ 0.1”已經舍入為該格式的最接近的數字,即使在計算之前,也會產生小的舍入誤差。

有一些庫允許進行更好的數學運算:

但是,我強烈建議這樣做。 您可以通過AJAX輕松完成此操作 ,而不必擔心響應速度。 Javascript並不是真正為數字構建的。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM