ホームページ ウェブフロントエンド フロントエンドQ&A es6 にはプリミティブ データ型がいくつありますか

es6 にはプリミティブ データ型がいくつありますか

May 05, 2022 pm 06:43 PM
es6

プリミティブ データ型は 6 つあります: 1. 「空」の値、つまり値が存在しないことを表す Null 型、2. 未定義を表す未定義型、3. を表す数値型数値 (整数、浮動小数点数など)、4. 文字列タイプ、一重引用符または二重引用符で囲まれたテキストの一部、5. シンボル タイプなど。

es6 にはプリミティブ データ型がいくつありますか

このチュートリアルの動作環境: Windows 7 システム、ECMAScript バージョン 6、Dell G3 コンピューター。

es6 には 9 つのデータ型があり、2 つのカテゴリに分類できます:

  • 元のデータ型 (6 種類): String、Number )、Boolean、Null 、未定義、シンボル;

  • 参照データ型 (3 種類): オブジェクト、配列、関数。

6 つのプリミティブ データ型について話しましょう。

#データ型説明nullNull 値は非オブジェクトを意味します##未定義#未定義の値、割り当てられていない初期化値を示します数値、次の値数学的演算情報の流れを表す文字列ブール値、論理演算の値 #Symbol は一意の値を表します

1, Null 型

Null は、値が 1 つだけある特殊なデータ型で、「null」値を表します。つまり、値が存在しません。 value. 値 なし。null オブジェクト ポインタを定義するために使用されます。

typeof 演算子を使用して Null の型を表示します。Null の型が Object であることがわかります。

var a = null;
console.log(typeof a);
ログイン後にコピー

es6 にはプリミティブ データ型がいくつありますか

これは、Null が実際にオブジェクトを使用していることを意味します。オブジェクトに属する特別な値。したがって、変数を Null に代入することで、空のオブジェクトを作成します。

2. 未定義型

Unknown も、値が 1 つだけある特別なデータ型であり、未定義を意味します。変数を宣言しても、その変数に値を代入しない場合、変数のデフォルト値は未定義になります。例:

var num;
console.log(num);  // 输出 undefined
ログイン後にコピー

es6 にはプリミティブ データ型がいくつありますか

typeof 演算子を使用して未割り当ての変数の型を表示すると、その型も未定義であることがわかります。宣言されていない変数については、typeof 演算子を使用して型を確認すると、宣言されていない変数も未定義であることがわかります。サンプル コードは次のとおりです:

var message;
console.log(typeof message);  // 输出 undefined
console.log(typeof str);     // 输出 undefined
ログイン後にコピー

es6 にはプリミティブ データ型がいくつありますか

説明: 類似点とnull と未定義の違い ポイント:

同じポイント: どちらも値のデータ型である; どちらも判定に参加するときに false を返す; どちらもメソッドを持たない

違い:

(a)、null はオブジェクトであり、未定義はオブジェクトではありません。

(b)、null はキーワードであり、未定義はキーワードではありません。

(c)、null が数値に変換された場合は 0、未定義は数値に変換された場合に NaN になります;

(d)、typeof null は 'object' を返し、typeof unknown は 'unknown' を返します;

alert(null == undefined) ;//true
ログイン後にコピー

3, Number 型

数値 (Number) 型は、数値を定義するために使用されます。JavaScript では、整数と小数 (浮動小数点数) は区別されません。Number 型は、それらを均一に表すために使用されます。次の例に示すように:

var num1 = 123;     // 整数
var num2 = 3.14;    // 浮点数
ログイン後にコピー

注: Number 型で定義できる値は無制限ではありません。JavaScript の Number 型は、-(253 - 1) の間の値のみを表すことができます。 ) と (253 -1)。

非常に大きい数値または非常に小さい数値については、次の例に示すように科学 (指数) 表記法で表すこともできます。

var y=123e5;      // 123 乘以 10 的 5 次方,即 12300000
var z=123e-5;     // 123 乘以 10 的 -5 次方,即 0.00123
ログイン後にコピー

さらに、特殊な数値がいくつかあります。 Number タイプ 値はそれぞれ Infinity、-Infinity、NaN です。

  • Infinity: 正の無限大の値を表すために使用され、通常は 1.7976931348623157e 308 より大きい数値を指します。 ;

  • -Infinity: 負の無限大の値を表すために使用され、通常は 5e-324 未満の数値を指します;

  • NaN: 数値ではありませんvalue (Not a Number の略語) 。0 を 0 で割るなど、無効または未定義の算術演算構造を表すために使用されます。

ヒント: 特定の計算の結果が JavaScript の Number タイプの値の範囲を超える場合、その数値は自動的に無限大に変換され、正の数は無限大、負の数は変換されます。存在するのは無限大です。

数字には、それ自身と等しくない奇妙なものがあります。それは alert (NaN == NaN) // false;

ただし、NaN はデータ型であるため、typeof NaN の戻り値は 'number';

## です。 #For 上記 2 つの機能のために、ECMAScript は関数 isNaN() を提供します; その目的は、受信値を数値に変換できるかどうかを判断することであり、戻り値はブール値です。

空の文字列を数値に変換すると 0;

値を数値型に変換するには、Number();

を使用できます。 4. 文字列型

文字列型は、'123'、"abc" など、一重引用符 '' または二重引用符 "" で囲まれたテキストです。一重引用符と二重引用符は文字列を定義する別の方法であり、文字列の一部ではないことに注意してください。

文字列を定義するときに、文字列に引用符が含まれている場合は、バックスラッシュ\を使用して文字列内の引用符をエスケープするか、文字列から別の引用符を選択して文字列を定義できます。次の例を参照してください。表示例:

var str = "Let's have a cup of coffee.";  // 双引号中包含单引号
var str = 'He said "Hello" and left.';    // 单引号中包含双引号
var str = 'We\'ll never give up.';        // 使用反斜杠转义字符串中的单引号
ログイン後にコピー

5. Boolean型

Boolean型は条件判定を行う際にtrue(真)かfalse(偽)の2つの値のみを持ちます。 true または false を直接使用してブール型変数を定義することに加えて、次のようないくつかの式を使用してブール型値を取得することもできます。

var a = true;   // 定义一个布尔值 true
var b = false;  // 定义一个布尔值 false
var c = 2 > 1;  // 表达式 2 > 1 成立,其结果为“真(true)”,所以 c 的值为布尔类型的 true
var d = 2 < 1;  // 表达式 2 < 1 不成立,其结果为“假(false)”,所以 c 的值为布尔类型的 false
ログイン後にコピー

ブール型の主な用途

通常の状況では、次の 6 つの状況のみが false になります: 空の文字列、null、未定義、0、-0、NaN

配列の変換方法 2 つの方法を使用できます。ブール値に変換するには: Boolean()、!!()

6. シンボル タイプ

Symbol は ECMAScript6 で導入されたタイプです。新しいデータ タイプです。一意の値を表すシンボル タイプの値は、次の例に示すように、Symbol() 関数を使用して生成する必要があります。
var str = "123";
var sym1 = Symbol(str);
var sym2 = Symbol(str);
console.log(sym1);          // 输出 Symbol(123)
console.log(sym2);          // 输出 Symbol(123)
console.log(sym1 == sym2);  // 输出 false :虽然 sym1 与 sym2 看起来是相同的,但实际上它们并不一样,根据 Symbol 类型的特点,sym1 和 sym2 都是独一无二的
ログイン後にコピー

【相关推荐:javascript视频教程web前端

##number
string
boolean

以上がes6 にはプリミティブ データ型がいくつありますかの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホット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ヘンタイを無料で生成します。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

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

SublimeText3 中国語版

SublimeText3 中国語版

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

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

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

ES6 で配列を反転する方法 ES6 で配列を反転する方法 Oct 26, 2022 pm 06:19 PM

ES6 では、配列オブジェクトの reverse() メソッドを使用して、配列の反転を実現できます。このメソッドは、配列内の要素の順序を逆にして、最後の要素を最初に、最初の要素を最後に配置するために使用されます。構文「array」 。逆行する()"。 reverse() メソッドは元の配列を変更します。変更したくない場合は、拡張演算子 "..." とともに使用する必要があり、構文は "[...array].reverse() 」。

非同期は es6 または es7 用ですか? 非同期は es6 または es7 用ですか? Jan 29, 2023 pm 05:36 PM

非同期はes7です。 async と await は ES7 に新しく追加されたもので、非同期操作のソリューションです。async/await は co モジュールとジェネレーター関数の糖衣構文と言え、より明確なセマンティクスで JS 非同期コードを解決します。名前が示すように、async は「非同期」を意味します。async は関数が非同期であることを宣言するために使用されます。async と await の間には厳密な規則があります。両方を互いに分離することはできず、await は async 関数内でのみ記述できます。

es6 の 2 つの配列で異なる項目を見つける方法 es6 の 2 つの配列で異なる項目を見つける方法 Nov 01, 2022 pm 06:07 PM

手順: 1. 構文 "newA=new Set(a); newB=new Set(b);" を使用して、2 つの配列をそれぞれセット型に変換します; 2. has() と filter() を使用して差分セットを検索します、構文 " new Set([...newA].filter(x =>!newB.has(x)))" では、差分セット要素がセット コレクションに含まれて返されます。 3. 配列を使用します。 from セットを配列に変換するタイプ、構文は「Array.from(collection)」です。

ミニ プログラムで es6 を es5 に変換する必要があるのはなぜですか? ミニ プログラムで es6 を es5 に変換する必要があるのはなぜですか? Nov 21, 2022 pm 06:15 PM

ブラウザの互換性のため。 ES6 は JS の新しい仕様として、多くの新しい構文と API を追加していますが、最新のブラウザーは ES6 の新機能を高度にサポートしていないため、ES6 コードを ES5 コードに変換する必要があります。 WeChat Web 開発者ツールでは、デフォルトで babel が使用され、開発者の ES6 構文コードを 3 つの端末すべてで適切にサポートされる ES5 コードに変換し、開発者がさまざまな環境によって引き起こされる開発上の問題を解決できるようにします。プロジェクト内でのみ設定して確認するだけです。 「ES6~ES5」オプション。

es5 および es6 で配列重複排除を実装する方法 es5 および es6 で配列重複排除を実装する方法 Jan 16, 2023 pm 05:09 PM

es5 では、for ステートメントと IndexOf() 関数を使用して配列の重複排除を実現できます。構文 "for(i=0;i<配列長;i++){a=newArr.indexOf(arr[i]);if( a== -1){...}}」。 es6 では、スプレッド演算子 Array.from() および Set を使用して重複を削除できます。まず配列を Set オブジェクトに変換して重複を削除してから、スプレッド演算子または Array.from() 関数を使用する必要があります。 Set オブジェクトを配列に変換してグループ化するだけです。

es6 の一時的なデッドゾーンとは何を意味しますか? es6 の一時的なデッドゾーンとは何を意味しますか? Jan 03, 2023 pm 03:56 PM

es6 では、一時的なデッド ゾーンは構文エラーであり、ブロックを閉じたスコープにする let および const コマンドを指します。コード ブロック内では、let/const コマンドを使用して変数が宣言される前に、変数は使用できず、変数が宣言される前は変数の「デッド ゾーン」に属します。これは構文上「一時デッド ゾーン」と呼ばれます。 ES6 では、一時的なデッド ゾーンや let ステートメントや const ステートメントでは変数のプロモーションが発生しないことを規定しています。これは主に実行時エラーを減らし、変数が宣言される前に使用されて予期しない動作が発生するのを防ぐためです。

es6 構文が必要ですか? es6 構文が必要ですか? Oct 21, 2022 pm 04:09 PM

いいえ、require は CommonJS 仕様のモジュール構文であり、es6 仕様のモジュール構文は import です。 require は実行時にロードされ、import はコンパイル時にロードされます。require はコード内のどこにでも記述できます。import はファイルの先頭にのみ記述でき、条件文や関数スコープでは使用できません。モジュール属性は導入されるだけです。 require を実行した場合、そのためパフォーマンスは比較的低くなりますが、インポート コンパイル中に導入されたモジュールのプロパティのパフォーマンスはわずかに高くなります。

es6 マップは注文されていますか? es6 マップは注文されていますか? Nov 03, 2022 pm 07:05 PM

地図は注文済みです。 ES6 のマップ タイプは、多くのキーと値のペアを格納する順序付きリストです。キー名と対応する値はすべてのデータ型をサポートします。キー名の等価性は、「Objext.is()」メソッドを呼び出すことによって決定されます。 , したがって、数字の 5 と文字列「5」は 2 つのタイプとして判断され、プログラム内で 2 つの独立したキーとして現れることができます。

See all articles