您好,登錄后才能下訂單哦!
今天小編給大家分享一下JavaScript可不可以寫后端的相關(guān)知識(shí)點(diǎn),內(nèi)容詳細(xì),邏輯清晰,相信大部分人都還太了解這方面的知識(shí),所以分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后有所收獲,下面我們一起來(lái)了解一下吧。
JavaScript可以寫后端;JavaScript可以利用“Node.js”來(lái)實(shí)現(xiàn)后端開發(fā),“Node.js”是一個(gè)讓JavaScript運(yùn)行在服務(wù)端的開發(fā)平臺(tái),是一個(gè)事件驅(qū)動(dòng)“I/O”服務(wù)端JavaScript環(huán)境,可以將“Node.js”理解為運(yùn)行在服務(wù)端的JavaScript,因此JavaScript可以寫在后端。
本教程操作環(huán)境:windows10系統(tǒng)、javascript1.8.5版、Dell G3電腦。
JavaScript可以寫后端。JavaScript可以通過Node.js技術(shù)來(lái)實(shí)現(xiàn)后端開發(fā),Node.js是一個(gè)讓JavaScript運(yùn)行在服務(wù)端的開發(fā)平臺(tái)。
Node.js是一個(gè)讓 JavaScript 運(yùn)行在服務(wù)端的開發(fā)平臺(tái),它讓 JavaScript 成為與PHP、Python、Perl、Ruby 等服務(wù)端語(yǔ)言平起平坐的腳本語(yǔ)言。
首先要清楚Node不是一個(gè)Web服務(wù)器,這十分重要。它本身并不能做任何事情。它無(wú)法像Apache那樣工作。如果你希望它成為一個(gè)HTTP服務(wù)器,你必須借助它內(nèi)置庫(kù)自己編寫。Node.js只是計(jì)算機(jī)上執(zhí)行代碼的另一種方式,它是一個(gè)簡(jiǎn)單的JavaScript Runtime.
簡(jiǎn)單的說 Node.js 就是運(yùn)行在服務(wù)端的 JavaScript。
Node.js 是一個(gè)基于Chrome JavaScript 運(yùn)行時(shí)建立的一個(gè)平臺(tái)。
Node.js是一個(gè)事件驅(qū)動(dòng)I/O服務(wù)端JavaScript環(huán)境,基于Google的V8引擎,V8引擎執(zhí)行Javascript的速度非???,性能非常好。
JavaScript寫后端時(shí)出現(xiàn)的一些問題:
一、浮點(diǎn)型數(shù)據(jù)失去精度問題:
浮點(diǎn)型又分為單精度浮點(diǎn)型(float)和雙精度浮點(diǎn)型(double ),在強(qiáng)類型語(yǔ)言中(C,JAVA)中有詳細(xì)的說明,在 JS 中統(tǒng)稱為數(shù)值型(Number)。有興趣的讀者可以去了解相關(guān)知識(shí),本文繼續(xù)回到上面的問題。
首先看一下失去精度問題的表現(xiàn)情況,源碼如下:
console.log(0.1+0.2); //0.30000000000000004
本應(yīng)該結(jié)果是 0.3 才對(duì),可是運(yùn)行結(jié)果出現(xiàn)了迷之問題。這在后端開發(fā)中是絕對(duì)不允許存在的,這個(gè)問題不只在JS中出現(xiàn),經(jīng)測(cè)試JAVA,PHP都存在該問題,C不存在該問題。其它語(yǔ)言咋也沒學(xué)過??!咋也不知道??!
說完問題,接下來(lái)說一說解決辦法,源碼如下:
const floatAdd = (arg1, arg2) => { let r1,r2,m; try { r1 = arg1.toString().split(".")[1].length; } catch(e) { r1 = 0; } try { r2 = arg2.toString().split(".")[1].length; } catch(e) { r2 = 0; } m =Math.pow(10,Math.max(r1,r2)); return (arg1*m+arg2*m)/m; }; console.log(floatAdd(0.1,0.2)); // 0.3
二、toFixed()四舍五入的BUG:
toFixed() 方法使用定點(diǎn)表示法來(lái)格式化一個(gè)數(shù)值。簡(jiǎn)單點(diǎn)來(lái)說,就是對(duì)數(shù)據(jù)進(jìn)行四舍五入的處理,定點(diǎn)表示要保留的小數(shù)位數(shù)。
示例:
let a=1.115; console.log(a.toFixed(2)) //1.11
以上就是“JavaScript可不可以寫后端”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家閱讀完這篇文章都有很大的收獲,小編每天都會(huì)為大家更新不同的知識(shí),如果還想學(xué)習(xí)更多的知識(shí),請(qǐng)關(guān)注億速云行業(yè)資訊頻道。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。