ホームページ >ウェブフロントエンド >フロントエンドQ&A >JavaScript でバックエンドを作成できますか?
JavaScript でバックエンドを記述できる; JavaScript でバックエンド開発を実現できる「Node.js」 「Node.js」はサーバー上で JavaScript を実行できる開発プラットフォームであり、イベントです。 「I/O」駆動の「サーバーサイドJavaScript環境」「Node.js」はサーバーサイドで動作するJavaScriptとして理解できるため、バックエンドでJavaScriptを記述することができます。
このチュートリアルの動作環境: Windows 10 システム、JavaScript バージョン 1.8.5、Dell G3 コンピューター。
JavaScript でバックエンドを作成できます。 JavaScript は、サーバー側で JavaScript を実行できる開発プラットフォームである Node.js テクノロジを通じてバックエンド開発を実現できます。
Node.js は、JavaScript をサーバー側で実行できるようにする開発プラットフォームで、JavaScript を PHP、Python、Perl、Ruby などのサーバー側言語と同等のスクリプト言語にします。
まず、Node は Web サーバーではないことを理解することが重要です。それ自体は何もしません。 Apacheのようには動作しません。 HTTP サーバーにしたい場合は、組み込みライブラリを使用して自分でサーバーを作成する必要があります。 Node.js は、コンピューター上でコードを実行するもう 1 つの方法です。シンプルな JavaScript ランタイムです。
簡単に言えば、Node.js はサーバー上で実行される JavaScript です。
Node.js は、Chrome JavaScript ランタイム上に構築されたプラットフォームです。
Node.js は、Google の V8 エンジンをベースにしたイベント駆動型 I/O サーバーサイド JavaScript 環境であり、V8 エンジンは JavaScript を非常に高速に実行し、非常に優れたパフォーマンスを発揮します。
バックエンド JavaScript を作成するときに発生するいくつかの問題:
1. 浮動小数点データの精度が失われる問題:
浮動小数点型は次のとおりです。単精度浮動小数点型(float)と倍精度浮動小数点型(double)に分けられ、厳密に型付けされた言語(C、JAVA)で詳細に記述され、JSでは数値型(Number)と総称されます。 。この記事では引き続き上記の質問に戻ります。
まず、精度損失問題のパフォーマンスを見てみましょう。ソース コードは次のとおりです:
console.log(0.1+0.2); //0.30000000000000004
結果は 0.3 になるはずですが、実行結果はわかりにくいです。 。これはバックエンド開発では絶対に許可されません。この問題は JS だけで発生するものではありません。テストした結果、この問題は JAVA と PHP には存在しますが、C には存在しません。なぜ他の言語を学ばなかったのですか?理由がわからない!
問題について話した後、解決策について話しましょう。ソース コードは次のとおりです:
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
2. toFixed() の丸めのバグ:
toFixed()このメソッドは、固定小数点表現方法を使用して数値をフォーマットします。簡単に言うとデータを四捨五入する処理で、固定小数点は保持する小数点以下の桁数を表します。
例:
let a=1.115; console.log(a.toFixed(2)) //1.11
[関連する推奨事項: JavaScript ビデオ チュートリアル 、Web フロントエンド ]
以上がJavaScript でバックエンドを作成できますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。