【笔记】JS的字符串

前言

JS的字符串学习笔记

通过字面量定义值

1
var str = "";

通过包装类定义值

1
var str = new String("");

获取指定下标的字符

通过索引访问运算符(下标运算符)

  • 如果超出范围,会返回undefined
1
var result = str[0];

通过实例方法

  • 如果超出范围,会返回空字符串
1
var result = str.charAt(0);

字符串拼接

通过加法运算符

1
var result = "" + "";

通过实例方法

不通过分隔符拼接

1
var result = str.concat("");
拼接多个字符串
1
var result = str.concat("", "");
链式调用
1
var result = str.concat("").concat("");

通过分隔符拼接

遍历字符串的字符

1
2
3
for (var i = 0; i < str.length; i++) {
console.log(str[i]);
}
1
2
3
for (var char of str) {
console.log(char);
}

实例属性

字符串长度

1
str.length;

实例方法

转换字符大小写

所有字符转换为大写

1
str.toUpperCase();

所有字符转换为小写

1
str.toLowerCase();

查找子字符串所在位置

从开始位置查找

  • 返回第一次找到的下标,如果不存在返回-1
1
str.indexOf("子字符串");

0:开始查找的下标

1
str.indexOf("子字符串", 0);

从结束位置查找

  • 返回最后一次找到的下标,如果不存在返回-1
1
str.lastIndexOf("子字符串");

0:开始查找的下标

1
str.lastIndexOf("子字符串", 0);

判断开头结尾

  • 返回布尔值,存在返回true,不存在返回false

判断开头

1
str.startsWith("子字符串");

判断结尾

1
str.endsWith("子字符串");

判断是否包含子字符串(ES6)

1
str.includes("子字符串");

替换子字符串

1
str.replace("子字符串", "替换字符串");
1
2
3
str.replace("子字符串", function () {
return "替换字符串";
});

字符串截取

slice()

  • 允许负值

0:开始位置
1:结束位置(不包含)

1
var result = str.slice(0, 1);

substring()

  • 不允许负值,负值被认为是0

0:开始位置
1:结束位置(不包含)

1
var result = str.substring(0, 1);

substr()

0:开始位置
2:截取的子字符串长度

1
var result = str.substr(0, 2);

去除首尾空白字符

1
var result = str.trim();

字符串分割

1
var result = str.split("分隔符");

字符串通过分隔符拼接

1
var result = str.join("分隔符");

数字字符串补齐长度

4:补齐后的字符串最终长度
"0":用于填充的字符串

1
var result = str.padStart(4, "0");

完成