1 <script > 2 //*Q:什么时候赋值给null 3 //*A:初始赋值,表明将要赋值为对象 4 //*结束时,清除对象,让指向的对象成为垃圾对象被垃圾回收器回收释放内存) 5 //*Q:我要严格区分数据类型和变量类型? 6 //*A:*数据的类型 7 // *基本类型 8 // *对象类型 9 // *变量的类型(变量内存值的类型) 10 // *基本类型:保存就是一个基本类型数据 11 // *引用类型:保存的是一个地址值 12 13 14 //实例:实例对象 15 //类型:类型对象 16 function Person(name,age){//构造函数new时候就已经确定了,大写的Person(为什么是构造函数,前面一篇文章已给出) 这就是一个类型,也是一个对象 17 this.name=name//这里的this.name代表给全局window添加一个属性name 18 this.age=age 19 } 20 var p=new Person('Tom',12)//这就是一个根据类型创建的实例对象 实例 21 22 //起始 23 var b=null//这里表明这个b将要赋值为一个对象,只是现在还不能确定这里面的数据类型 24 //确定对象就赋值 25 b=[12,'jxb']//给对象赋值 26 //最后 27 var b=null//清除对象,让b指向的对象成为垃圾对象(被垃圾回收器回收释放内存) 28 29 var a={}//这里面{}表明的是一个数据类型,而a表明是一个变量(引用)类型 30 //证明a是一个引用类型 31 var a=function () { 32 33 } 34 console.log(typeof a)//返回的是一个function 35 </script>