1.什么是typeof?----就是js中可以判断数据是什么类型。
一般分为值类型(undefined、number、string、boolean)和 引用类型(function、Array、Object、Null ----都是对象)
如何判断一个变量是不是对象呢?
(1)如果是值类型的话就直接用typeof ,返回的是具体的类型
typeof [1, 'a', true] //"object"
typeof(function () {}) //"function"
typeof(10) //"number"
(2)如果是引用类型的话用instanceof,返回的是true/false
[1, 'a', true] instanceof Object //true
2.什么是对象?---对象是若干属性的集合,这里也有“方法”属性。
c#/java中,对象都是new一个class 。里有字段、属性、方法
而js中,对象里面一切都是属性,没有方法---因为方法也是属性,只不过是键值对的形式
一切(引用类型)都是对象,对象是属性的集合
typeof function () {} //funtion
(function(){}) instanceof Object // true
课后疑问1:typeof 一个函数的结果和instanceof一个函数的结果为什么不一样,明明函数也是对象啊?