Math 名前空間と BigInt
Math.sqrt つまり、sqrt は Math 名前空間の一部です。
// 平方根を求める 2 つの方法。
Math.sqrt(100); // 10、方法 1
100*(1/2); // 10、方法 2
8*(1/3); // 2、立方根にも機能します
Math.max() と Math.min():
Math.max(23,54,12,6,32,98,87,34,11); // 98
// 型強制も行います
Math.min(23,54,12,'6',32,98,87,34,11); // 6
// 解析は行いません
Math.min(23,54,12,'6px',32,98,87,34,11); // NaN
Math オブジェクトの組み込み定数:
Math.PI * (Number.parseFloat('10px')**(2)); // 領域を取得
no b/w 1-6 を生成します。
Math.trunc(Math.random() * 6) 1;
上限と下限を区別しないランダムな値を生成します。
constrandomInt = (min, max) => Math.floor(Math.random() * (最大-最小)) 1 分;
randomInt(10,20);
// これらの Math.method() はすべて型強制を行います。
Math.trunc(25.4); // 25
Math.round(25.4); // 25
Math.floor(25.4); // 25
Math.ceil(25.4); // 26
Math.floor は負の数の場合に適した選択肢です。
Math.trunc(-25.4); // -25
Math.floor(-25.4); // -26
// 小数点以下の四捨五入: .toFixed は数値ではなく文字列を返します
(2.5).toFixed(0); // '3'
(2.5).toFixed(3); // '2.500'
(2.345).toFixed(2); // '2.35'
// 単項記号を追加して no に変換します。
(2.345).toFixed(2); // 2.35
// Number はプリミティブであるため、メソッドがありません。つまり、JS は舞台裏でボックス化を行います。つまり、プリミティブをオブジェクトなしに変換し、操作を実行し、操作が終了したら、プリミティブに変換します。
モジュラー演算子または剰余演算子:
5 % 2; // 1
8 % 3; // 2
8/3; // 2.6666666666666665
// 奇数または偶数
const isEven = n => n%2 === 0;
isEven(20);
isEven(21);
isEven(22);
使用例: すべての奇数行、偶数行、n 回目などを処理するために使用されます。
数値区切り文字: [ES2021]
非常に大きな数値を表すために使用されます
これらは数字の間に配置できるアンダースコアです。エンジンはこれらのアンダースコアを無視するため、開発者の混乱が軽減されます。
元。定数直径 = 287_460_000_000;
直径; // 287460000000
定価格 = 342_25;
価格; // 34225
固定料金1 = 1_500;
定数料金2 = 15_00;
料金1 === 料金2; // true
アンダースコアは数字の間にのみ配置できます。
小数点の隣に配置することはできません。
また、番号の先頭または末尾に配置することもできません。
const PI = 3.14_15;
PI; // 3.1415
すべて無効な数値区切り文字の例です
const PI = 3.1415; // 先頭には配置できません。
const PI = 3.1415; // 最後には配置できません。
const PI = 3_.1415; // 小数点の隣には配置できません。
const PI = 3.1415; // 小数点の隣には配置できません。
const PI = 3._1415; // 2 つ続けて配置することはできません。
文字列を数値に変換する:
数値('2500'); // 2500
数値('25_00'); // NaN 、したがって、数値が変数に直接割り当てられる場合にのみ使用できます。したがって、文字列に no が格納されている場合、または API から no を取得している場合は、エラーを避けるために、数値区切り文字「_」を使用しないでください。
同様のことが parseInt にも当てはまります。つまり、以下に示すように _ 以降はすべて破棄されます。
parseInt('25_00'); // 25
ES2020 で導入された特別なタイプの整数
数値は内部的に 64 ビット、つまり 64 個の 1 または 0 で表され、任意の数値を表します。 53 のみが数字の保存に使用され、残りは小数点の位置と符号の保存に使用されます。したがって、数値のサイズ、つまり ((2*
53) - 1) には制限があります。これは、JS が安全に表現できる最大の「いいえ」です。保存中にバイナリ形式で作業するため、基数は 2 です。
2
*53 - 1; // 9007199254740991
Number.MAX_SAFE_INTEGER; // 9007199254740991
Number.MAX_SAFE_INTEGER 1; // 9007199254740992
Number.MAX_SAFE_INTEGER 2; // 9007199254740992
Number.MAX_SAFE_INTEGER 3; // 9007199254740994
Number.MAX_SAFE_INTEGER 4; // 9007199254740996
BigInt にするために、no の末尾に「n」が追加されます。例
const num = 283891738917391283734234324223122313243249821n;
数字; // 283891738917391283734234324223122313243249821n
BigInt は、このような巨大な数値を表示するための JS 方法です。
BigInt 数値を作成するために Constructor Fn を使用する別の方法。
const x = BigInt(283891738917391283734234324223122313243249821);
×; // 283891738917391288062871194223849945790676992n
演算: すべての算術演算子は BigInt と同じように機能します。
const x = 100n 100n;
×; // 200n
const x = 10n * 10n;
×; // 100n
BigInt 数値と通常の数値を混在させないでください
const x = 100n;
const y = 10;
z = x*y; // エラー
これを機能させるには、BigInt コンストラクター Fn を使用します。
z = x * BigInt(y);
z; // 1000n
比較演算子と単項演算子は例外です。
20分> 19; // true
20n === 20; // false、=== は、JS が型強制を行うのを防ぎます。 LHS と RHS の両方に異なるプリミティブ型があるため、結果は「false」になります。
20n 型; // 'bigint'
タイプ20; // '数値'
20n == 20; // true、JS は BigInt を通常の数値に変換することで、型ではなく値のみを比較する型強制を実行します。
これも同様です: 20n == '20'; // true
例外:
演算子を使用すると、BigInt 数値が文字列に変換されません。
const num = 248923874328974239473829n
"num は巨大です。つまり " num; // 'num は巨大です、つまり 248923874328974239473829'
注:
Math.sqrt は BigInt では動作しません。
BigInt の除算では、小数部分が切り捨てられます。
10/3; // 3.3333333333333335
10n / 3n; // 3n
12n / 3n; // 4n
この新しいプリミティブ型は、JS 言語にいくつかの新しい機能を追加し、巨大な言語でも動作できるようにします。
以上がMath 名前空間と BigIntの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

Video Face Swap
完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック











Pythonは、スムーズな学習曲線と簡潔な構文を備えた初心者により適しています。 JavaScriptは、急な学習曲線と柔軟な構文を備えたフロントエンド開発に適しています。 1。Python構文は直感的で、データサイエンスやバックエンド開発に適しています。 2。JavaScriptは柔軟で、フロントエンドおよびサーバー側のプログラミングで広く使用されています。

Web開発におけるJavaScriptの主な用途には、クライアントの相互作用、フォーム検証、非同期通信が含まれます。 1)DOM操作による動的なコンテンツの更新とユーザーインタラクション。 2)ユーザーエクスペリエンスを改善するためにデータを提出する前に、クライアントの検証が実行されます。 3)サーバーとのリフレッシュレス通信は、AJAXテクノロジーを通じて達成されます。

現実世界でのJavaScriptのアプリケーションには、フロントエンドとバックエンドの開発が含まれます。 1)DOM操作とイベント処理を含むTODOリストアプリケーションを構築して、フロントエンドアプリケーションを表示します。 2)node.jsを介してRestfulapiを構築し、バックエンドアプリケーションをデモンストレーションします。

JavaScriptエンジンが内部的にどのように機能するかを理解することは、開発者にとってより効率的なコードの作成とパフォーマンスのボトルネックと最適化戦略の理解に役立つためです。 1)エンジンのワークフローには、3つの段階が含まれます。解析、コンパイル、実行。 2)実行プロセス中、エンジンはインラインキャッシュや非表示クラスなどの動的最適化を実行します。 3)ベストプラクティスには、グローバル変数の避け、ループの最適化、constとletsの使用、閉鎖の過度の使用の回避が含まれます。

PythonとJavaScriptには、コミュニティ、ライブラリ、リソースの観点から、独自の利点と短所があります。 1)Pythonコミュニティはフレンドリーで初心者に適していますが、フロントエンドの開発リソースはJavaScriptほど豊富ではありません。 2)Pythonはデータサイエンスおよび機械学習ライブラリで強力ですが、JavaScriptはフロントエンド開発ライブラリとフレームワークで優れています。 3)どちらも豊富な学習リソースを持っていますが、Pythonは公式文書から始めるのに適していますが、JavaScriptはMDNWebDocsにより優れています。選択は、プロジェクトのニーズと個人的な関心に基づいている必要があります。

開発環境におけるPythonとJavaScriptの両方の選択が重要です。 1)Pythonの開発環境には、Pycharm、Jupyternotebook、Anacondaが含まれます。これらは、データサイエンスと迅速なプロトタイピングに適しています。 2)JavaScriptの開発環境には、フロントエンドおよびバックエンド開発に適したnode.js、vscode、およびwebpackが含まれます。プロジェクトのニーズに応じて適切なツールを選択すると、開発効率とプロジェクトの成功率が向上する可能性があります。

CとCは、主に通訳者とJITコンパイラを実装するために使用されるJavaScriptエンジンで重要な役割を果たします。 1)cは、JavaScriptソースコードを解析し、抽象的な構文ツリーを生成するために使用されます。 2)Cは、Bytecodeの生成と実行を担当します。 3)Cは、JITコンパイラを実装し、実行時にホットスポットコードを最適化およびコンパイルし、JavaScriptの実行効率を大幅に改善します。

JavaScriptは、Webサイト、モバイルアプリケーション、デスクトップアプリケーション、サーバー側のプログラミングで広く使用されています。 1)Webサイト開発では、JavaScriptはHTMLおよびCSSと一緒にDOMを運用して、JQueryやReactなどのフレームワークをサポートします。 2)ReactNativeおよびIonicを通じて、JavaScriptはクロスプラットフォームモバイルアプリケーションを開発するために使用されます。 3)電子フレームワークにより、JavaScriptはデスクトップアプリケーションを構築できます。 4)node.jsを使用すると、JavaScriptがサーバー側で実行され、高い並行リクエストをサポートします。
