【1】JavaScriptの基礎が深くなる――データタイプの深く理解と総括
3995 ワード
データのタイプを深く理解する
データタイプの分類
基本(値)タイプ(5種類) オブジェクト(参照)タイプ(3種類) データタイプ判定(3つの方式)
まずは理解します 関数は でもある.配列は でもある.は、 を判断することができる. は、 を判断することができる.は、 とを判断できない.
判定対象の具体的なタイプ は、 と判断することができる.
である.初期値は、値をオブジェクトとして付与することを示している. ですから.が終わる前に、対象をごみの対象にします. データの種類: 基本タイプ オブジェクトタイプ 変数の種類(変数メモリ値の種類) 基本タイプ:保存されているのは基本タイプのデータ です.参照タイプ:保存されているのはアドレス値 です.
実例とタイプを理解する
データタイプの分類
基本(値)タイプ(5種類)
String
:任意の文字列Number
:任意の数字boolean
:true
/false
null
:null
undefined
:undefined
Object
:任意のオブジェクトArray
:特別なオブジェクト(数値が下付き、内部データが順序正しい)Function
:特別なオブジェクト(実行可能)typeof
:データタイプを返す文字列表現var a
console.log(a) // undefined
console.log(typeof a) // "undefined"
console.log(a === undefined) // true
console.log(typeof a === undefined) // false
console.log(typeof a === "undefined") // true
console.log(undefined === "undefined") // false
a = 4
console.log(typeof a) // "number"
console.log(typeof a === Number) // false
console.log(typeof a === "number") // true
a = "hahha"
console.log(typeof a) // "string"
a = false
console.log(typeof a) // "boolean"
a = null
console.log(typeof a) // object
console.log(a === null) // true
typeof
は、データタイプの文字列表現を返します.typeof true //"boolean"
typeof "hahha" //"string"
typeof 12 //"number"
typeof null //"object"
typeof ccc //"undefined"
typeof function(){} //"function"
typeof {} //"object"
instanceof
:タイプの例まずは理解します
instanceof
の意味:instance
は例の意味であり、A instanceof B
は実際にA
がB
であるかどうかを判断する例である.この点を理解すれば、タイプを判断するのは難しくないです.var b1 = {
b2: [1, "hehe", console.log],
b3: function () {
console.log("b3")
return function () {
return "Mandy"
}
}
}
console.log(b1 instanceof Object) // true
console.log(b1.b2 instanceof Array, b1.b2 instanceof Object) // true true
console.log(b1.b3 instanceof Function, b1.b3 instanceof Object) //true true
console.log(typeof b1.b2) // "object"
console.log(typeof b1.b3) // "function"
console.log(typeof b1.b2[1]) // "string"
console.log(typeof b1.b2[2]) // "function"
b1.b2[2](555) // 555
console.log(b1.b3()()) // "b3" "Mandy"
注意:Function
タイプであり、Object
タイプArray
タイプであり、Object
タイプ===
undefined
およびnull
ccc === "undefined" // true
null === null // true
締め括りをつけるtypeof
:undefined
/数値/文字列/ブール値/function
null
とobject
と、array
とtypeof null // "object"
typeof [] // "object"
object
:instanceof
A instanceof B
:===
、undefined
null
とundefined
の違いは?null
代表が定義しました.undefined
は、表現が定義され、値が与えられただけの値はnull
// undefined null ?
var a
console.log(a) // undefined
a = null
console.log(a) // null
いつ変数に null
値を与えますか?null
//
var b = null // null,
//
b = ['atguigu', 12]
//
b = null // b ( )
変数タイプとデータタイプを厳密に区別しますか?実例とタイプを理解する
// :
// :
function Person (name, age) {//
this.name = name
this.age = age
}
var p = new Person('tom', 12) //