1.判断js类型的方法
1 typof() 2 可以判断出 string null boolean nudefiend number 3 但是判断typeof(null) 时值为object ,判断对象数组的时候也是object
Object.prototype.toString.call() 可以判断出所有类型
Array.isArray()判断是否为数组
2.闭包的概念:有权访问另一个函数内部的变量
优点:避免全局变量污染,希望一个变量长期存储在内存中
function f1(){ var n=1; function f2(){ //f2就是闭包 alert(n) } }
3.浅拷贝和深拷贝都只针对于引用数据类型
浅拷贝:浅拷贝只复制对象的指针,不复制对象本身 Object.assign()实现浅拷贝 深拷贝:使用JSON.stringify和JSON。parse()实现深拷贝,缺陷:只能处理Number,string boolean Arry ,只有可以转成JSON格式对象才可以这样用,像function就没办法了
4.js中值类型,和引用类型
1.值类型:string ,Boolean ,number ,null ,undefiend 2.引用类型:function object array