es6字符串新增方法及其他_es replace

String.raw`Hi\n${2+3}!`
// 实际返回 "Hi\\n5!",显示的是转义后的结果 "Hi\n5!"

String.raw`Hi\u000A!`;
// 实际返回 "Hi\\u000A!",显示的是转义后的结果 "Hi\u000A!"

3.实例方法:includes(), startsWith(), endsWith()

传统上,indexOf来判断一个字符串是否包含在那个一个字符串中。

includes()包含即可
startsWith() 需要从开头匹配
endsWith() 结尾匹配

let s = 'Hello world!';

s.startsWith('Hello') // true
s.endsWith('!') // true
s.includes('o') // true

4.实例方法:repeat()

重复就是力量 返回一个新字符串 重复某字符串n次

'x'.repeat(3) // "xxx"
'hello'.repeat(2) // "hellohello"
'na'.repeat(0) // ""

4.实例方法:trim 拓展 trimStart() trimEnd()

es2019 对 trim 方法进行了补充 对字符的前部分 或后部分 除空

const s = ' abc ';

s.trim() // "abc"
s.trimStart() // "abc "
s.trimEnd() // " abc"

5.实例方法:replace 拓展 replaceAll()

es2019 对 replace 方法进行了补充 可以不采用/g对字符串进行整体替换

'aabbcc'.replaceAll('b', '\_')
// 'aa\_\_cc'
'aabbcc'.replace('b', '\_')
// 'aa\_bcc'

6.实例方法:padStart(),padEnd()

padStart()用于头部补全,padEnd()用于尾部补全

'x'.padStart(5, 'ab') // 'ababx'
'x'.padStart(4, 'ab') // 'abax'

'x'.padEnd(5, 'ab') // 'xabab'
'x'.padEnd(4, 'ab') // 'xaba'

函数的拓展

1.允许参数设置默认值

可以直接在函数声明后 设置默认值

function log(x, y = 'World') {
  console.log(x, y);
}

log('Hello') // Hello World
log('Hello', 'China') // Hello China
log('Hello', '') // Hello

2.箭头函数
var f = v => v;

// 等同于
var f = function (v) {
  return v;
};

var f = () => 5;
// 等同于
var f = function () { return 5 };

var sum = (num1, num2) => num1 + num2;
// 等同于
var sum = function(num1, num2) {
  return num1 + num2;
};

3.rest参数

ES6 引入 rest 参数(形式为…变量名),用于获取函数的多余参数

function add(...values) {
  let sum = 0;

  for (var val of values) {
    sum += val;
  }

  return sum;
}

add(2, 5, 3) // 10

4.严格模式

ES2016 做了一点修改,规定只要函数参数使用了默认值、解构赋值、或者扩展运算符,那么函数内部就不能显式设定为严格模式,否则会报错。

5.name属性
var f = function () {};

// ES5
f.name // ""

// ES6
f.name // "f"

6.尾调用优化

尾调用是函数式编程的一个重要概念。
指函数的最后一步是调用另一个函数。
以下情况:不属于尾调用 第三种:等价于最后return undefined

// 情况一
function f(x){
  let y = g(x);
  return y;
}

// 情况二
function f(x){
  return g(x) + 1;
}



#### css

1,盒模型
2,如何实现一个最大的正方形
3,一行水平居中,多行居左
4,水平垂直居中
5,两栏布局,左边固定,右边自适应,左右不重叠
6,如何实现左右等高布局
7,画三角形
8,link @import导入css
9,BFC理解


![](https://img-blog.csdnimg.cn/img_convert/eef4af91b599085d83b412007aacc14a.webp?x-oss-process=image/format,png)

#### js

1,判断 js 类型的方式
2,ES5 和 ES6 分别几种方式声明变量
3,闭包的概念?优缺点?
4,浅拷贝和深拷贝
5,数组去重的方法
6,DOM 事件有哪些阶段?谈谈对事件代理的理解
7,js 执行机制、事件循环
8,介绍下 promise.all
9,async 和 await,
10,ES6 的 class 和构造函数的区别
11,transform、translate、transition 分别是什么属性?CSS 中常用的实现动画方式,
12,介绍一下rAF(requestAnimationFrame)
13,javascript 的垃圾回收机制讲一下,
14,对前端性能优化有什么了解?一般都通过那几个方面去优化的?


![](https://img-blog.csdnimg.cn/img_convert/8ca01d60515ad9e63576570c87db5fc0.webp?x-oss-process=image/format,png)

9,async 和 await,
10,ES6 的 class 和构造函数的区别
11,transform、translate、transition 分别是什么属性?CSS 中常用的实现动画方式,
12,介绍一下rAF(requestAnimationFrame)
13,javascript 的垃圾回收机制讲一下,
14,对前端性能优化有什么了解?一般都通过那几个方面去优化的?


[外链图片转存中...(img-Wecs4vPm-1718554665108)]

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值