Js前端面试题

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

猜你喜欢

转载自www.cnblogs.com/huanhuan55/p/12733231.html