ホームページ > ウェブフロントエンド > jsチュートリアル > JavaScriptのデータ型とは何ですか?

JavaScriptのデータ型とは何ですか?

青灯夜游
リリース: 2023-01-03 09:31:51
オリジナル
34200 人が閲覧しました

JavaScript には、文字列、数値、ブール値、Null、未定義、シンボル、オブジェクト、配列、関数 (関数) の 9 つのデータ型があります。

JavaScriptのデータ型とは何ですか?

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

JavaScript データ型:

JavaScript 言語のすべての値は、特定のデータ型に属します。 JavaScript には 9 つのデータ型があります:

  • 値の型 (基本型): 文字列、数値、ブール値、Null、不明な定義 (未定義)、シンボル。

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

注: シンボルは、一意の値を表すために ES6 で導入された新しいプリミティブ データ型です。

1. 未定義: 未定義タイプには値が 1 つだけあり、それは特別な値 unknown です。変数が var を使用して宣言されているが初期化されていない場合、変数値は未定義です。

2. Null: Null 型は、値が 1 つだけある 2 番目のデータ型です。その特別な値は Null です。論理的な観点から見ると、null は空のオブジェクト ポインタです。これが、null 値を検出するために typeof 演算子を使用すると「object」が返される理由です。

3. ブール型: ブール型には、true

false という 2 つの値があります。ブール型のリテラル値 true と false は大文字と小文字が区別されることに注意してください。つまり、True と False (およびその他のサイズが混在した形式) はブール値ではなく、単なる識別子です。

4. 数値: この型には 2 つの表現形式があり、1 つ目は整数で、2 つ目は浮動小数点数です。整数: 10 進数、8 進数、および 16 進数のリテラル値で表すことができます。浮動小数点数: 値には小数点が含まれ、小数点の後に 1 桁の数字が必要です。

5. String: String 型は、0 個以上の 16 ビット Unicode 文字で構成される文字シーケンス、つまり文字列を表すために使用されます。シングルクォーテーションを使用するかダブルクォーテーションを使用するかについては、js ではまだ違いがありません。忘れずにペアでお越しください。

6. シンボルの種類

シンボル(Symbol)は、ECMAScript バージョン 6 で新たに定義されました。シンボル タイプは一意であるため、変更できません。

var s = Symbol()
ログイン後にコピー

新しいコマンドを Symbol 関数の前に使用することはできません。使用しないと、エラーが報告されます。これは、生成されたシンボルがオブジェクトではなくプリミティブ型の値であるためです

Symbol 関数は、シンボル インスタンスの説明を示す文字列をパラメータとして受け入れることができます

7。オブジェクト: オブジェクトデータ型 はオブジェクトと呼ばれ、データと機能 (関数) のコレクションです。これは、new 演算子の後に作成するオブジェクト タイプの名前を指定して作成できます。リテラル表記を使用して作成することもできます。別の名前 (空の文字列を含む任意の文字列) を持つプロパティを追加します。

8. 配列

JavaScript 配列は角括弧内に記述されます。配列の項目はカンマで区切られます。

次のコードは、3 つの項目 (自動車ブランド) を含む、cars という名前の配列を宣言 (作成) します。

var cars = ["Porsche", "Volvo", "BMW"];
ログイン後にコピー

配列のインデックスは 0 に基づいており、最初の項目は [ 0] です。 ]、2 番目の項目は [1] などとなります。

ECMAScript の配列は、他の言語の配列とは大きく異なります。

  • ECMAScript 配列の各項目は、あらゆる種類のデータを保存できます。

  • ECMAScript 配列のサイズは動的に調整でき、要素は配列に追加または削除できます。

##[推奨学習:

js 基本チュートリアル ]

9. Function

ECMAScript の関数はオブジェクトであり、他の参照型と同様にプロパティとメソッドを持ちます。したがって、関数名は実際には関数オブジェクトへのポインターです。

1)、関数宣言

function sum(num1,num2){    
    return num1+num2;
}//函数声明

var sum = function(num1,num2){  
    return num1+num2;
};     //函数表达式 这里的分号很重要
ログイン後にコピー

2)、オーバーロードなし

function addSomeNumber(num){    
    return num + 100;
}

function addSomeNumber(num){    
    return num + 200;
}

var result = addSomeNumber(100);  //300
ログイン後にコピー

2 番目の関数を作成すると、最初の関数を参照する変数 addSomeNumber が上書きされます。

3)、関数宣言と関数式

alert (sum(10,10));
function sum(num1,num2){    
    return num1+num2;
}
ログイン後にコピー

このようなコードは正常に実行できます。コードの実行を開始する前に、パーサーはまず関数宣言を読み取り、実行環境に追加します。コードが評価される前に、JS エンジンは最初のパスで関数を宣言し、ソース コード ツリーの先頭に置きます。 。ただし、これを関数式に変更するとエラーが発生します。

4)、値としての関数

  • パラメーターを渡すように、ある関数を別の関数に渡します

  • function callSomeFunction(someFunction,someArgument){   
        return someFunction(someArgument);
    }
    
    function add10(num){
        return num+10;
    }
    
    var result1 = callSomeFunction(add10,10);
    alert(result1);  //20
    
    function getGreeting(name){
        return "Hello"+name;
    }
    var result2 = callSomeFunction(getGreeting,"Mike");
    alert(result2);  //Hello Mike
    
    //callSomeFunction是通用的,函数作为第一个参数传递进去,返回执行第一个参数后的结果
    ログイン後にコピー
  • ある関数を別の関数から返す

  • function createComparisonFunction(propertyName){
        return function(object1,object2){
            var value1 = object1[propertyName];
            var value2 = object2[propertyName];
            if(value1<value2){
                return -1;
            }else if(value1>value2){
                return 1;
            }else{
                return 0;
            }
        }
    }
    
    var date = [{name:"Mike", age:28},{name:"Amy", age:29}];//创建包含两个对象的数组
    date.sort(creatComparisonFunction("name"));
    alert(date[0].name);//Amy
    date.sort(creatComparisonFunction("age"));
    alert(date[0].name);//Mike
    ログイン後にコピー
    プログラミング関連の知識の詳細については、

    プログラミング ビデオをご覧ください。 !

    以上がJavaScriptのデータ型とは何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート