带你读书之“红宝书”:第五章 基本引用类型⑥

2022-02-15  本文已影响0人  前端不许笑

写在前头

大多数小伙伴看技术书籍都会用“啃”来描述读书的直观感受,当然我也是一个前端小白,白的透明那种,但是我在读技术书籍感觉到“啃”的时候,我希望把我啃红宝书第四版的过程的想法,总结带给大家,以供后来者能够更快上手。

注: 本文由于作者水平原因,如有错误之处,恳请大家指正,另外随着学习的深入,体会的加深,我会不断回来更新,修改这类文章。

思维导图

image.png

简述

引用类型虽然有点像类,但跟类并不是一个概念。还是得区分开来,引用类型就是一个模子,可以用这个模子造出很多东西。

5.3. 原始值包装类型

image.png

5.3.3. String

1. JavaScript 字符

大多数字符来说,16位码元对应一个字符。

js字符串使用2个Unicode编码混合。

Mathias Bynens的博文。

通过索引位置查询对应字符的编码。

给定的UTF-16码元创建字符。

2. normalize 方法

编码方式

不同的编码方式也可以表示同样的字符。

判断相等

编码方式不同,但是看起来一样的字符其实并不相等。

4种规范化形式

NFD,NFC,NFKD,NFKC

判断字符串是否规范化

①4种比较全是false,未规范化

字符串和调用normalize()方法返回的值比较

②true表明已经规范化

3. 字符串操作方法

concat()

let string = "Hello";

let newstring = string.concat("World");

console.log("newstring"); // HelloWorld

不会改变原来字符串。可以接收多个参数。

①参数一个

3个方法一样

返回调用他们的字符串的一个子字符串。

只传入一个参数表示开始位置,从开始位置一直提取到末尾。

②参数2个

slice(),substring()

第二个参数表示结束提取位置,闭区间这个位置也要提取。

substr()

第二个参数表示返回子字符串的数量。

③参数是负数

转换负数,重复原来默认操作

把负数加上length变为正数。再使用下面的规则。

slice()

把所有的负数加上length变为正数。

substring()

所以负参数全部变为0。

会将较小的参数作为提取字符开始的起点。

substr()

第一个负参数加上length变为正数,第二个负参数变0。

上一篇下一篇

猜你喜欢

热点阅读