温馨提示:
1.JavaScript严格区分大小写。
2.Object是所有类的基类,JavaScript 中的所有事物都是对象,字符串、数值、数组、函数等等。
3.JavaScript数据类型可分为·:基本数据类型、引用数据类型。
//1.基本数据类型:字符串类型/string、数值类型/number、布尔类型/boolean、空类型/null、未定义类型/undefined。
var a = '文字';
var b = 123;
var c = true;
var d = null;
var e = undefined;
//2.引用数据类型:Object/对象、Array/数组、Date/日期、RegExp/正则表达式、function/函数等等。
var f = new Object();
var g = new Array();
var h = new Date();
var i = new RegExp();
var j = function () {};
//注意以下几种情况:
var aa;
var bb = "";
var cc = 0.123;
var dd = 1 + 2 * 3;
var ee = [];
var ff = {};
var gg = Math.PI;
//使用 typeof 校验数据类型
console.log(typeof a); //输出结果:string
console.log(typeof b); //输出结果:number
console.log(typeof c); //输出结果:boolean
console.log(typeof d); //输出结果:object
console.log(typeof e); //输出结果:undefined
console.log(typeof f); //输出结果:object
console.log(typeof g); //输出结果:object
console.log(typeof h); //输出结果:object
console.log(typeof i); //输出结果:object
console.log(typeof j); //输出结果:function
console.log(typeof aa); //输出结果:undefined
console.log(typeof bb); //输出结果:string
console.log(typeof cc); //输出结果:number
console.log(typeof dd); //输出结果:number
console.log(typeof ee); //输出结果:object
console.log(typeof ff); //输出结果:object
console.log(typeof gg); //输出结果:number
//使用 prototype 校验数据类型
console.log(Object.prototype.toString.call(a) === '[object String]'); //输出结果:true
console.log(Object.prototype.toString.call(b) === '[object Number]'); //输出结果:true
console.log(Object.prototype.toString.call(c) === '[object Boolean]'); //输出结果:true
console.log(Object.prototype.toString.call(d) === '[object Null]'); //输出结果:true
console.log(Object.prototype.toString.call(e) === '[object Undefined]'); //输出结果:true
console.log(Object.prototype.toString.call(f) === '[object Object]'); //输出结果:true
console.log(Object.prototype.toString.call(g) === '[object Array]'); //输出结果:true
console.log(Object.prototype.toString.call(h) === '[object Date]'); //输出结果:true
console.log(Object.prototype.toString.call(i) === '[object RegExp]'); //输出结果:true
console.log(Object.prototype.toString.call(j) === '[object Function]'); //输出结果:true
console.log(Object.prototype.toString.call(aa) === '[object Undefined]'); //输出结果:true
console.log(Object.prototype.toString.call(bb) === '[object String]'); //输出结果:true
console.log(Object.prototype.toString.call(cc) === '[object Number]'); //输出结果:true
console.log(Object.prototype.toString.call(dd) === '[object Number]'); //输出结果:true
console.log(Object.prototype.toString.call(ee) === '[object Array]'); //输出结果:true
console.log(Object.prototype.toString.call(ff) === '[object Object]'); //输出结果:true
console.log(Object.prototype.toString.call(gg) === '[object Number]'); //输出结果:true