纵有疾风起
人生不言弃

面试题整理笔记

js篇
1.js数据类型
原始类型和对象类型。原:number、string、boolean、null、undefined;对:object、function、regexp;
2.类型转换
强制类型转换 parseInt()、parseFloat()、
隐式类型转换 四则运算
转换为字符串 toString()
3.数据类型检测

alert(typeof null);alert(typeof undefined);alert(typeof "abc")alert(typeof 123)

4.变量的作用域和变量提升
5.typeof和instanceof的区别
typeof是检测操作数类型
instanceof是测试对象类
6.对象序列化
简单来说,就是将对象和字符串之间互相转换。
ES5就存在了这样的内置函数JSON.stringify()和JSON.parse()

//JSON.parse()  字符串转json对象var data='{"title":"lxy"}'//data为字符串console.log(JSON.parse(data))//JSON.stringify()   json对象转字符串var data={"title":'lxy'}//data为json对象console.log(JSON.stringify(data))

7.js数组的方法
除下之外常用的还有indexOf(),splice(),concat(),还有基础的添加删除,只要平时多练就能记住,最重要的就
是明白哪些会改变原数组,哪些是产生新的数组,我就不分别总结啦,偷个懒
找到一篇比较好的别人耐心总结的,分享给大家数组方法大总结

var arm=[99,2,8];console.log(arm.join('~'))//join() 将数组按分隔符连接输出为字符串//split() 是将字符串按照分隔符创建一个数组eg:var aa='1#2#3';console.log(aa.split("#"))console.log(arm.reverse())//reverse()对数组的元素颠倒顺序,不会产生新的数组,改变数组console.log(arm.sort(function(a,b){return a-b}));console.log(arm)//看出改变了数组//sort()对数组进行排序,返回排序后数组,括号内是数值排序的规律,初学者可以试试b-a

在做项目的过程中经常会遇到说检测某个值是否存在数组中,我常用的就是indexOf()或者find()
jq中就是使用$.inArray(),感兴趣的朋友可以去了解一下
8.函数闭包(算是比较重要的概念)
简单的一句话解释闭包:函数外可以访问函数内的变量。想要理解闭包,要清楚作用域的范围,函数作为返回值

//函数的返回值也可以是函数function sum(){   return function(x){     return x+=1;   }}console.log(sum())//返回的是内部的函数function(x) {    return x += 1;},console.log(sum()(1)) //2
//闭包demo2    function f1(){        var bb = "js闭包";         return function f2(){            console.log('我是'+bb);        }    }    var f = f1();    f();  //弹出:我是js闭包;

一般的函数机制是,当函数体执行完之后,函数内的局部变量就会被浏览器删除回收,但是现在闭包函数f1函数执行完,变量bb是不会被清除的,而是始终保持在内存中,直到f2函数执行完毕,感兴趣的可以去看一看js的垃圾回收机制,注意使用闭包的会造成内存泄漏,想要深入了解的小伙伴可以去看这篇博客js垃圾回收机制和引起内存泄漏的操作

9.高阶函数(提升加分项。偶尔大公司会问到)
平常我们的函数的参数可以接收一个变量,那一个函数可以接收另一个函数作为参数,这种函数就是所谓的高阶函数
其实在我是接触过高阶函数的,只是我不知道比如就有setInterval,setTimeout,sort

 var d=function (a){     return (a+1)}function sum(x,y,f){      return f(x)+f(y)}var b=sum(1,2,d)console.log(b)//简单的高阶函数demo,其中d作为sum函数的参数,sum函数就是高阶函数

10.原型和原型链
继续整理中

文章转载于:https://www.jianshu.com/p/939d281739c7

原著是一个有趣的人,若有侵权,请通知删除

未经允许不得转载:起风网 » 面试题整理笔记
分享到: 生成海报

评论 抢沙发

评论前必须登录!

立即登录