标签:ring == 基本类型 数值 null array function 形式 instance
var a; // undefined: undefined
a = null; // null: null
a = 123; // Number: 任意数值
a = "abc"; // String: 任意文本
a = true; // Boolean: true/false
// Object: 任意对象
// Array: 特别的对象类型(下标/内部数据有序)
// Function: 特别的对象类型(可执行)
var b = {
b1 : [2, 'abc', console.log],
b2 : function () {
console.log('b3()')
}
}
/*
可以区别: 数值, 字符串, 布尔值, undefined, function
不能区别: null与对象, 一般对象与数组
*/
var a;
console.log(a, typeof a, a===undefined); // undefined 'undefined' true
// type a的值为"undefined"
console.log(a===typeof a); // false
a = 3;
console.log(typeof a === 'number') // true
a = 'atguigu'
console.log(typeof a === 'string') // true
a = true
console.log(typeof a === 'boolean') // true
a = null
console.log(a === null) // true
console.log(typeof a) // 'object'
var b1 = {
b2: [2, 'abc', console.log],
b3: function () {
console.log('b3()')
}
}
console.log(b1 instanceof Object, typeof b1) // true 'object'
console.log(b1.b2 instanceof Array, typeof b1.b2) // true 'object'
console.log(b1.b3 instanceof Function, typeof b1.b3) // true 'function'
console.log(typeof b1.b2[2]) // 'function'
console.log(b1.b2[2]('abc')) // 'abc'
// undefined代表定义未赋值
// null代表定义并赋值了, 只是值为null
var a = null //a将指向一个对象, 但对象此时还没有确定
// 初始赋值,表明将要赋值给对象
a = null //让a指向的对象成为垃圾对象
// 结束前,让对象成为垃圾对象,(被垃圾回收器回收)
/*
* js的变量本身是没有类型的, 变量的类型实际上是变量内存中数据的类型
* 变量类型:
* 基本类型: 保存基本类型数据的变量
* 引用类型: 保存对象地址值的变量
* 数据类型:
* 基本类型
* 对象类型
*/
标签:ring == 基本类型 数值 null array function 形式 instance
原文地址:https://www.cnblogs.com/quxingzhou/p/12076954.html