検索
ホームページウェブフロントエンドjsチュートリアルJavaScriptの演算子学習メモ(続き)_基礎知識

1. 乗算演算子

1. 乗算: *

乗算演算子のいくつかの特別なルール:

オペランドが両方とも数値の場合、積が ECMAscript の数値表現の範囲を超える場合は、従来の乗算に従って計算され、infinity または -infinity が返されます。 オペランドの 1 つが NaN の場合、戻り結果は NaN
になります。 無限大に 0 を掛けると、NaN
が返されます。 無限大にゼロ以外の数値を乗算した場合は、無限大または -infinity
を返します。 無限大と無限大を乗算して無限大を返します
オペランドの 1 つが数値ではない場合、バックグラウンドはまずnumber() を呼び出して数値に変換し、次に上記のルールを適用します

コードをコピーします コードは次のとおりです:


アラート(5 * 6); //30
アラート(5 * NaN) //NaN
; アラート(無限 * 0) //NaN
; アラート(無限 * 2) //無限
; アラート("5" * 5); //25
アラート(true * 10) //10
; アラート(false * 10);



2. 部門: /

除算演算子のいくつかの特別なルール:

オペランドがすべて数値の場合、商が ECMAscript の数値表現の範囲を超える場合は、infinity または -infinity が返されます。

オペランドの 1 つが NaN の場合、戻り結果は NaN

になります。 無限大を無限大で割ると NaN
が返されます。 0 を 0 で割った場合、NaN
を返します。 ゼロ以外の有限数を 0 で割った場合、infinity または -infinity
を返します。 無限大をゼロ以外の有限数で割った場合、無限大または -infinity
を返します。 オペランドの 1 つが数値ではない場合、バックグラウンドはまずnumber() を呼び出して数値に変換し、次に上記のルールを適用します

コードをコピーします コードは次のとおりです:
アラート(5 / 5); アラート(5 / NaN) //NaN
; アラート(無限 / 無限) //NaN
; アラート(無限 / 2); アラート(5 / 0); //無限大
アラート(10 / true); //10
アラート(10 / false);



3. 係数 (剰余): %

モジュロ演算子のいくつかの特別なルール:
オペランドがすべて数値の場合、通常の除算計算に従い、剰余を返します 被除数が無限で、除数が有限数の場合、戻り結果は NaN

になります。 被除数が有限で、除数が 0 の場合、NaN

が返されます。 無限大を無限大で割ると NaN

が返されます。 被除数が有限で除数が無限の場合、被除数を返します

配当が0の場合は0を返します

オペランドの 1 つが数値ではない場合、バックグラウンドは最初にnumber() を呼び出して数値に変換し、次に上記のルールを適用します





コードをコピー

コードは次のとおりです:



アラート(26 % 5) //1
アラート(無限大 % 3) //NaN
; アラート(3 % 0); //NaN
アラート(5 % 無限大) //5
アラート(0 % 10); //0
アラート(true % 25); アラート(3 % false); //NaN



2. 加法演算子

1. 加算演算子:

オペランドの 1 つが文字列の場合:

両方のオペランドが文字列の場合、2 番目のオペランドを最初のオペランドの末尾に連結します。

1 つのオペランドのみが文字列の場合、もう 1 つのオペランドを文字列に変換してから、上記のルールを実行します

コードをコピーします コードは次のとおりです:

Var result1 = 5 5 // デジタルプラス数値
アラート(結果1); //10
var result2 = 5 "5" //数値と文字列
; アラート(結果2); //"55"


2. 減算演算子: -

オペランドの 1 つが文字列、ブール値、null、または未定義の場合、最初にバックグラウンドでnumber() が呼び出されて数値に変換され、その後減算が実行されます。

3. 関係演算子

次より大きい:>

未満:

以上:>=

以下: 関係演算子の特別ルール:

オペランドが文字列の場合、2 つの文字列の対応する文字エンコーディングを比較します

一方のオペランドが数値の場合、もう一方のオペランドを数値に変換してから比較します

任意の数値を NaN と比較すると、結果は false になります

4.

等価演算子

1. 平等と不平等: == そして! =

両方の演算子は比較前にオペランドを同じ型に変換します

変換する場合、等価演算子と不等号演算子は次の規則に従います:

オペランドの 1 つがブール型の場合、まず数値型に変換され、false は 0 に変換され、true は 1 に変換されます。

オペランドの一方が文字列で、もう一方が数値の場合、文字列は比較のために数値に変換されます。
オペランドの 1 つがオブジェクトで、もう 1 つがオブジェクトではない場合、最初にオペランドの valueof() メソッドが呼び出され、次に基本型の値が取得されて比較されます
比較する際の特別なルール:

null と未定義は同等です。

null と unknown は他の型に変換されません
いずれかの演算の結果が NaN の場合、等価比較は false を返し、不等比較は true を返します。両方のオペランドが NaN であっても、戻り結果は false のままであることに注意してください。つまり、NaN は NaN と等しくありません。
両方のオペランドがオブジェクトの場合、それらが参照する値が比較され、同じオブジェクトを参照している場合は true を返し、それ以外の場合は false を返します。
2. 一致するものと一致しないもの: == と ===

== は比較のためにオペランドを同じ型に変換します。

=== は型を変換せず、直接比較します

例:

コードをコピーします コードは次のとおりです:
var result1 = ("55" == 55); var result2 = ("55" === 55); alert(result1);//true
alert(result2); //false"55" は文字列、55 は数値、型が異なります




5. 条件演算子

変数 = 条件式?真の値: 偽の値 まず条件式が評価され、結果が true の場合は true の値が変数に代入され、false の場合は false の値が変数に代入されます。

コードをコピー

コードは次のとおりです:


var num1 = 10;
var num2 = 25;
var num3 = (num2 > num1) num2 : num1;
アラート(num3); //25

6. 代入演算子

1. 単純な代入演算子: =

var num1 = 10;
num=num1 10;
2. 複合代入演算子: =、-=、*=、/=、%=、>>=、>>=

コードをコピーします コードは次のとおりです:


var num = 5;
アラート(番号); //5
num = 5;
アラート(番号); //10
num *= 2;
アラート(番号); //20
num /= 10;
アラート(番号); //2
num -= 2; アラート(番号); //0


7. カンマ演算子

カンマ演算子は 1 つのステートメントで複数の操作を実行できます

目的: 1. 複数の変数を宣言します

var num1=1、num2=2、num3=3; 2. 課題


var num=(0,1,2,3)//num=3

代入演算で使用される場合、コンマ演算子は常に最後の式の値を返します。


練習エリア:

コードをコピーします コードは次のとおりです:
var num1 = 5;
var num2 = 10;
var message = "5 と 10 の合計は " num1 num2;
アラート(メッセージ);



声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
JavaScriptとWeb:コア機能とユースケースJavaScriptとWeb:コア機能とユースケースApr 18, 2025 am 12:19 AM

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

JavaScriptエンジンの理解:実装の詳細JavaScriptエンジンの理解:実装の詳細Apr 17, 2025 am 12:05 AM

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

Python vs. JavaScript:学習曲線と使いやすさPython vs. JavaScript:学習曲線と使いやすさApr 16, 2025 am 12:12 AM

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

Python vs. JavaScript:コミュニティ、ライブラリ、リソースPython vs. JavaScript:コミュニティ、ライブラリ、リソースApr 15, 2025 am 12:16 AM

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

C/CからJavaScriptへ:すべてがどのように機能するかC/CからJavaScriptへ:すべてがどのように機能するかApr 14, 2025 am 12:05 AM

C/CからJavaScriptへのシフトには、動的なタイピング、ゴミ収集、非同期プログラミングへの適応が必要です。 1)C/Cは、手動メモリ管理を必要とする静的に型付けられた言語であり、JavaScriptは動的に型付けされ、ごみ収集が自動的に処理されます。 2)C/Cはマシンコードにコンパイルする必要がありますが、JavaScriptは解釈言語です。 3)JavaScriptは、閉鎖、プロトタイプチェーン、約束などの概念を導入します。これにより、柔軟性と非同期プログラミング機能が向上します。

JavaScriptエンジン:実装の比較JavaScriptエンジン:実装の比較Apr 13, 2025 am 12:05 AM

さまざまなJavaScriptエンジンは、各エンジンの実装原則と最適化戦略が異なるため、JavaScriptコードを解析および実行するときに異なる効果をもたらします。 1。語彙分析:ソースコードを語彙ユニットに変換します。 2。文法分析:抽象的な構文ツリーを生成します。 3。最適化とコンパイル:JITコンパイラを介してマシンコードを生成します。 4。実行:マシンコードを実行します。 V8エンジンはインスタントコンピレーションと非表示クラスを通じて最適化され、Spidermonkeyはタイプ推論システムを使用して、同じコードで異なるパフォーマンスパフォーマンスをもたらします。

ブラウザを超えて:現実世界のJavaScriptブラウザを超えて:現実世界のJavaScriptApr 12, 2025 am 12:06 AM

現実世界におけるJavaScriptのアプリケーションには、サーバー側のプログラミング、モバイルアプリケーション開発、モノのインターネット制御が含まれます。 2。モバイルアプリケーションの開発は、ReactNativeを通じて実行され、クロスプラットフォームの展開をサポートします。 3.ハードウェアの相互作用に適したJohnny-Fiveライブラリを介したIoTデバイス制御に使用されます。

next.jsを使用してマルチテナントSaaSアプリケーションを構築する(バックエンド統合)next.jsを使用してマルチテナントSaaSアプリケーションを構築する(バックエンド統合)Apr 11, 2025 am 08:23 AM

私はあなたの日常的な技術ツールを使用して機能的なマルチテナントSaaSアプリケーション(EDTECHアプリ)を作成しましたが、あなたは同じことをすることができます。 まず、マルチテナントSaaSアプリケーションとは何ですか? マルチテナントSaaSアプリケーションを使用すると、Singの複数の顧客にサービスを提供できます

See all articles

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

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

AI Clothes Remover

AI Clothes Remover

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

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

MinGW - Minimalist GNU for Windows

MinGW - Minimalist GNU for Windows

このプロジェクトは osdn.net/projects/mingw に移行中です。引き続きそこでフォローしていただけます。 MinGW: GNU Compiler Collection (GCC) のネイティブ Windows ポートであり、ネイティブ Windows アプリケーションを構築するための自由に配布可能なインポート ライブラリとヘッダー ファイルであり、C99 機能をサポートする MSVC ランタイムの拡張機能が含まれています。すべての MinGW ソフトウェアは 64 ビット Windows プラットフォームで実行できます。

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

WebStorm Mac版

WebStorm Mac版

便利なJavaScript開発ツール

Dreamweaver Mac版

Dreamweaver Mac版

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

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