[关闭]
@Wangww0925 2019-08-07T07:54:04.000000Z 字数 3456 阅读 205

ECMAScript的核心语言 (二)字符串 String

js-笔记


概述

字符串是由unicode字符组成的有序序列

String的连接符: +

String的定义:

  1. 1 使用单引号 ''
  2. 2 使用双引号 ""

String的嵌套:

  1. 1 单引号内不能嵌套单引号
  2. 2 双引号内不能嵌套双引号

转义字符:

字符串中有特殊意义的字符,需要转义

  1. \ 反斜线
  2. ' 单引号
  3. " 双引号
  4. \n 换行
  5. \r 回车
  6. \t tab
  7. unicode编码

汉字的 unicode 编码:

  1. document.write('\u4f60\u597d'); // 返回 你好

String的比较:

  1. 1 ASCII码比较:
  2. console.log('a' > 'A'); // 返回 true,97与65的比较
  3. console.log('abc' > 'cab'); // 返回 false,97与99的比较
  4. 2 汉字的比较: 先转成unicode,再比较值
  5. console.log('傻' > '擦'); // 返回 false
  6. 傻: \u50bb -> 20667
  7. 擦: \u64e6 -> 25830
  8. console.log('王' > '李'); // 返回 true
  9. 王: \u674e -> 26446
  10. 李: \u738b -> 29579

String的长度: length

  1. console.log('hello world'.length); // 返回 11

String的方法:

charAt() 指定索引(下标)的字符: 与[]类似

  1. var str = 'what are you like';
  2. console.log(str.charAt(0)); // 返回 w
  3. console.log(str.charAt(5)); // 返回 a
  4. console.log(str[5]); // 返回 a

concat() 连接字符串: 与+类似

  1. console.log('你好'.concat('呀!')); // 返回 你好呀!
  2. console.log('你好' + '呀!'); // 返回 你好呀!

split() 指定字符分割字符串: 分割的字符组成数组

  1. var str = 'what are you like';
  2. console.log(str.split()); // 返回 ["what are you like"]
  3. console.log(str.split('')); // 返回 ["w", "h", "a", "t", " ", "a", "r", "e", " ", "y", "o", "u", " ", "l", "i", "k", "e"]
  4. console.log(str.split(' ')); // 返回 ["what", "are", "you", "like"]

indexOf() 字符首次出现的索引(下标): 不存在返回-1

  1. var str = 'what are you like';
  2. console.log(str.indexOf('a')); // 返回 2
  3. console.log(str.indexOf('r')); // 返回 6
  4. console.log(str.indexOf('g')); // 返回 -1 ,不存在返回-1

lastIndexOf() 字符最后一次出现的索引(下标):

  1. console.log('what are you like'.lastIndexOf('a')); // 返回 5

replace(老字符, 新字符) 替换: 不改变原字符串

  1. var str = 'abcdeaa';
  2. console.log(str.replace('a','123')); // 返回 123bcdeaa;只替换一个
  3. console.log(str.replace(/a/g,'123')); // 返回 123bcde123123,使用正则全局替换
  4. console.log(str); // 返回 abcdeaa

slice() 截取: 不改变原字符串,第二参数指索引

slice(1,3):从下标1到下标3,但是不包括下标3

  1. var str = 'what are you like';
  2. console.log(str.slice(1,3)); // 返回 ha
  3. console.log(str); // 返回 what are you like

slice(5):从下标5开始截取到最后

  1. var str = 'what are you like';
  2. console.log(str.slice(5)); // 返回 are you like

substr() 截取: 与slice()类似,不改变原字符串,第二参数指长度

substr(1,3):从下标3截取3个

  1. var str = 'what are you like';
  2. console.log(str.substr(1,3)); // 返回 hat
  3. console.log(str); // 返回 what are you like

substr(5):从下标5开始截取后面所有的

  1. var str = 'what are you like';
  2. console.log(str.substr(5)); // 返回 are you like

substring() 截取: 功能与slice()一致

substring(1,3):从下标1到下标3,但是不包括下标3

  1. var str = 'what are you like';
  2. console.log(str.substring(1,3)); // 返回 ha
  3. console.log(str); // 返回 what are you like

substring(5):从下标5开始截取后面所有的

  1. var str = 'what are you like';
  2. console.log(str.substring(5)); // 返回 are you like

toLowerCase() 转为小写

  1. console.log('WHAT ARE YOU LIKE'.toLowerCase()); // 返回 what are you like

toLocaleLowerCase() 转为本地小写: 与toLowerCase()类似

  1. console.log('WHAT ARE YOU LIKE'.toLocaleLowerCase()); // 返回 what are you like

toUpperCase() 转为大写

  1. console.log('what are you like'.toUpperCase()); // 返回 WHAT ARE YOU LIKE

toLocaleUpperCase() 转为本地大写: 与toUpperCase()类似

  1. console.log('what are you like'.toLocaleUpperCase()); // 返回 WHAT ARE YOU LIKE

其他

match() 正则

search()

anchor() 给字符串添加一个锚点

big() 用大号字体显示字符串

blink() 添加一个blink标签

fixed() 以打字机文本显示字符串

fontcolor() 以指定颜色显示字符串

fontsize() 以指定大小显示字符串

small() 小型字体

italics() 斜体

sub() 下标

sup() 上标

String转对象: JSON.parse('{"a":"aaa","b":"bbb"}')

作为数组使用 []方法:

  1. var str = 'abcdefghijklmnopqrstuvwxyz';
  2. console.log(str[1]); // 返回 b
  3. str[0] = 'b'; // 不能修改
  4. console.log(str); // 返回 abcdefghijklmnopqrstuvwxyz

作者 wendy
2019 年 5月 23日

添加新批注
在作者公开此批注前,只有你和作者可见。
回复批注