前端面试题JS篇-个人整理
分类:
文章
•
2022-10-16 22:56:09
字符串操作
- 字符串转数组
split(’,’) 将字符串内每个字符按照引号内符号分割并返回
- substring() / substr() 切割字符串
substring(startIndex, endIndex) 截取范围为两个下标之间的字符(含起始下标不含结束下标)
substr(startIndex, length) 截取范围为起始下标后length位字符
- replace() 替换字符串
只替换字符串中第一个匹配的字符&全部替换字符串中匹配的字符
数组操作
- splice() 删除/替换数组 (改变原始数组并返回元素数组)

splice(startIndex, length) - 从起始下标开始删除多少个元素
splice(startIndex, length, newEl) - 将起始下标后length位替换为新元素
splice(startIndex, 0, newEl) - 在起始下标后插入一个新元素
- slice()
slice(startIndex, endIndex) - 截取数组,截取范围为起始下标志结束下标(含首不含尾)
- push()
从数组尾部添加元素并返回数组长度
- unshift()
从数组头部添加元素并返回数组长度
- shift()
删除数组第一个元素并返回该元素
- pop()
删除数组最后一个元素并返回该元素
- concat()
arr1.concat(arr2) 将arr2数组拼接到arr1数组并返回新数组
- toString()
将数组转为以‘,’分割的字符串
- join()
将数组转为以引号内符号分割的字符串
- sort()
sort()方法默认升序排序,需要降序排序可以传入自定义方法作为参数
- 数组去重
- 遍历数组使用indexOf去重
- 遍历数组使用标识符去重
- 排序后遍历数组,若有重复元素则必定相邻,对比新数组中最后一个元素是否等于当前元素
- es6方法去重(Set)

或者

Array.from()可以把类数组对象、可迭代对象(比如Set)转换为数组
判断变量的数据类型
- js中共有6中基础数据类型:
undefined、null、string、number、boolean、symbol(es6)
和一种引用数据类型 Object
判断数据类型可以使用 typeof或是instanceof
但最好用的还是
Object.prototype.toString.call()