JavaScriptの基礎:データタイプの中のあれらの見識は非常に少ないです.

5234 ワード

Javascriptは、3つの基本データタイプ(string、number、bootlean)、2つの特殊データタイプ(undefined、null)、および1つの参照タイプ(object)を含む6種類のデータタイプがあります.この文章はこの6種類のデータの種類を一つ一つ説明して、これらの基礎概念の理解と応用を深めます.
 
ストリングス
stringタイプのデータは、16ビットのUnicode文字からなる文字列で、typeofでそのデータの種類を検出します.
var str = "Hi, Javascript";

console.log(typeof str); // string
Javascriptでは、undefinedとnullを除いた他のデータタイプにtoString()の方法がありますので、これらのデータタイプはtoString法により対応するstringタイプに変換できます.
123..toString(); // "123"

true.toString(); // "true"

new Object().toString(); // [object Object]

"Hello".toString(); //  "Hello"

undefined.toString(); // Error

null.toString(); // Error
一般的に、toStringは伝達パラメータを必要とせず、数値を文字列に変換する場合、1つのradixパラメータを伝達することにより、数値を対応する2進数、8進数、16進数の文字列表現に変換することができます.
10..toString(2);  // 1010      

10..toString(8);  // 12       

10..toString(16); // a       
 
number
Javascriptでは、intとfloatのデータタイプではなく、numberで整数と浮動小数点の数値を表しています.この他に、numberはNaN(Not a Number)という特殊な数値があります.NaNは数値タイプのデータを返すことを約束していますが、実際には戻っていない場合を表しています.NaNには二つの特徴があります.一つはNaNに関する操作はいずれもNaNに戻ります.二つはNaNは自分自身を含めていませんが、isNaN()の方法で一つの数値がNaNかどうかを判断できます.
typeof 123; // "number"

typeof 123.45 // "number"

typeof NaN; // "number"

NaN+1; // NaN

NaN == false; // false

NaN == NaN; //false

isNaN(NaN+1); //true
 
bollan
bollanタイプは二つの面の値しかありません.trueとfalseです.しかし、Javascriptでは、すべてのタイプの値がブーメランと同等の値に変換され、以下のように変換される.
(1)すべての対象はtrueとして扱われ、
(2)文字列が空の場合、この文字列はfalseとして扱われます.
(3)nullとundefinedはfalseとして扱われます.
(4)数字が0の場合、この数字はfalseとして扱われます.
typeof true; // "boolean"

typeof false; // "boolean"

Boolean(new Object()); //true

Boolean(undefined); //false

Boolean(null); //false

Boolean(''); //false

Boolean(0); //false

Boolean(100); // true
注意したいのは、普段私たちが見ているif(1){…}は、実際にJSエンジンの内部でもこれらの値をbootanに変換して演算しています.
 
undefined
このタイプは一つの値、すなわちundefinedだけです.undefinedは、varを使用して変数を宣言したがコピーされていない場合、この変数の値がundefinedという意味です.undefined発生の原因は二つあります.
(1)アクセス先が存在しない属性や方法
(2)変数を宣言しましたが、未割り当てです.
var v1,obj = {};

console.log(v1); //undefined

console.log(obj.get); //undefined

typeof v1; // "undefined"

typeof v2; // "undefined"

typeof obj.get; // "undefined"
 
null
nullタイプも一つの値だけです.nullは、一つの変数に有効なデータが含まれていないことを表します.nullはここでは`空の値`、`空のオブジェクト`という意味で、より正確には、nullとして割り当てられた変数は有効な数値、文字列、ブール、配列またはオブジェクトなどを保存していません.変数にnullを割り当てることによって、変数の内容を空にすることができます.nullが生まれた理由は一つだけです.つまり、一つの変数に対して明示的に割り当てられた値はnullです.
var p = null;

console.log(p); //null

typeof p ; // "object"

typeof null; // "object"
また、typeof nullは‘null’に戻るべきですが、実際に戻ってきたのは‘object’です.これは歴史的に残した問題です.他の原因がないので、考えすぎないでください.
 
object
対象は実際にはデータと機能のセットであり、全てを対象としたJSの中で、Objectはプロトタイプチェーンの一番上にあり、プロトタイプチェーンの終わりを表しています.したがって、ObjectはJSのすべての対象の祖先と言えます`.
var o1 = {};
var o2 = new Object();
var date = new Date();
var arr = [1,2,3];

typeof o1 ; // "object"
typeof o2 ; // "object"
typeof date ; // "object"
typeof arr ; // "object"
 
 
by@1ピクセル2016.01
転載と共有を歓迎しますが、出典と接続を明記してください.