在前端面试中,关于ES6的新特性,我经常使用的有以下几点:
let 和 const
- let:用于定义变量,具有块级作用域,不会在全局作用域中污染window对象,且变量不可重复定义。
- const:用于定义常量,值一旦被赋值后就不能改变,也具有块级作用域。
字符串新增API
- includes:用于判断字符串是否包含某个字符。
- trim:用于去除字符串的首尾空白。
- replaceAll:将字符串中的所有a替换成b。
- startsWith:判断字符串是否以s开头。
- endsWith:判断字符串是否以a结尾。
forof循环
- 用于遍历数组和伪数组,提供了一种更简洁、直观的方式来迭代集合中的元素。
数组新增API
- 扩展运算符:用于将一个数组转化为用逗号分隔的参数序列,方便数组复制、合并等操作。
- Array.from:将类数组对象或可遍历对象转换为真正的数组。
- Array.of:将一组值转换为数组,如果没有参数,则返回一个空数组。
- find:找出数组中第一个符合条件的元素。
- findIndex:返回数组中第一个符合条件的元素的索引,如果没有符合条件的元素,则返回1。
- includes:判断数组是否包含某个元素,并返回true或false。
模板字符串
- 使用反引号包裹字符串,可以在字符串中嵌入变量或表达式,用${}包裹变量或表达式即可,使得字符串拼接更加简洁、直观。
这些ES6的新特性极大地提高了JavaScript的代码质量和开发效率,是前端开发中不可或缺的工具。