解构其实还可以用于数组的结构 , 例如React 16.8 新推出的hook特性 , 如果是一个数组使用解构的话 , 是不局限于变量名 , 是根据索引进行解构的 。
说一下数组的常用方法
pop()
删除最后一项
map()
循环数组 , 具有返回值 ,不会对原数组造成影响
filter()
筛选数组 , 具有返回值 ,不会对原数组造成影响
shift()
删除第一项
unshift()
向数组的头部添加元素 。
forEach
循环数组 , 对原数组会造成影响
splice
切割数组
map的循环是不会对原数组造成影响的 。 map的底层其实是嵌套的for循环 。
其实使用forEath和map , 主要是根据场景进行使用的 。
说下你对Promise的理解 , Promise与 async await的区别Promise 是JS对异步的一个解决方式 , 可以通过.then的方式去获取执行成功的结果 , 也可以通过rejected去捕获错误 。
Promise.all() 会等所有的异步执行结束后才会返回
Promise.race() 一个执行完毕机会返回结果
Promise 和 async await 都是JS对异步的解决方案 , 对于Promise来说 , 我们如果在一个逻辑里面频繁的处理异步现成 , 可能会导致回调地狱的出现 。 而且Promise的写法也不够简洁 。 async await 对于我们来说 , 在代码方法 , 是不会造成回调地狱的 , 而且代码会更简洁 。 同时 async await 可以通过try catch捕获错误 。
可以说下你对for of 和for in 的理解吗
for..in
迭代的是对象的键的列表for in 可以遍历对象 , 数组 , 字符串类型 。
- 遍历对象 key 是键
- 遍历数组 key 是索引
- 遍历字符串 key 是下标
- 其他类型无法进行判断
for..of
则迭代对象的键对应的值for of 可以遍历对象 , 数组 , 字符串类型 。
- 遍历对象 要通过
Object.keys()
进行转化
- 遍历数组的是数组的值
- 遍历字符串的是字符串的单个值
- 其他类型无法进行判断
ES6新推出了Set方式 , 我们可以通过Set 方式去达到一个去重的目的 。 但是Set以后返回的是一个Set对象 , 这个Set对象可以使用forEach方法 , 但是不可以使用map方法 , 如果要使用map方法 , 我们需要通过
Array.from(arr)
去将其转化成一个数组说一下你对原型链的理解原型链基本分为三个部分
- 构造函数
- 实例
- 原型对象
每个实例都可以通过proto去向上寻找自己的原型对象 , 直到找到null 原型链结束
说一下什么是闭包闭包是指有权访问另一个函数作用域中的变量的函数
闭包可能会导致内存泄漏 , 循环调用的变量并不能被浏览器的GC算法所识别并回收 , 需要开发者手动将这个变量设置为null , 才可以进行内存释放 。
- 三星|6400万像素+1TB内存拓展,四摄手机多轮调价,跌至1499元
- 作者|李水青编辑|心缘智东西4月8日报道|旷视自研四向车方案,让电费省65%
- 交通|“十四五”交通领域科技创新规划出台明确重点研发任务 布局7项科技工程
- 制造业|四成新增骑手是制造业工人转行引热议:年轻人不愿进工厂 更青睐送外卖
- 小米科技|2022买手机眼光要放长远,这三款手机,轻松用四五年
- 工厂|年轻人为何不爱进工厂?外卖小哥:工资四五千 早上起太早晚上下班晚
- 本文转自:人民网足不出户怎么查流量、查账单?如何开卡、升级宽带?受上海疫情封控影响|移起守“沪” 上海移动系列服务指南(四)移动的营业厅来
- 网易|网易云热评(十四):我和你断了联系,不代表我不想你
- 高通骁龙|2022年四款优秀的中端机,无需高昂价格,可以闭眼入手
- Twitter|马斯特成为推特第一股东,刘强东卸任京东CEO,为何一边选择成为黄四郎,一边却学邬思道的半隐?