声明定义
// 对象创建字符串
var str1 = new String("50");
console.log(str1); // String {0: "5", 1: "0"}
console.log(str1.length); // 获取长度,2
console.log(str1.toString()) // 获取值,"50"
// 字面量创建字符串
var str2 = "100";
console.log(str2); // "100"
长度
str.length
**params**
{ string } str**return**
_ { number }
var str1 = "100";
console.log(str1.length); // 3
大小写转换
str.toUpperCase()
**_desc_**
字符串转换为大写**params**
{ string } str**return**
_ { string }
str.toLowerCase()
**_desc_**
字符串转换为小写**params**
{ string } str**return**
_ { string }
var str1 = "hello world";
var str2 = "GO";
console.log(str1.toUpperCase()); // 小写 --> 大写。"HELLO WORLD"
console.log(str2.toLowerCase()); // 大写 --> 小写。"go"
清除空格
str.trim()
**_desc_**
清除字符串左右两侧的空格**params**
{ string } str**return**
_ { string }
str.trimLeft()
**_desc_**
清除字符串左侧的空格**params**
{ string } str**return**
_ { string }
str.trimRight()
**_desc_**
清除字符串右侧的空格**params**
{ string } str**return**
_ { string }
var str1 = " Hello World ";
console.log(str1.trim()); // "Hello World"
console.log(str1.trimLeft()); // "Hello World "
console.log(str1.trimRight()); // " Hello World"
截取字符串
str.slice(startIndex, endIndex)
**params**
{ string } str**params**
{ number } startIndex 开始索引**params**
{ number } endIndex 结束索引**return**
{ string }
str.substring(startIndex, endIndex)
**params**
{ string } str**params**
{ number } startIndex 开始索引**params**
{ number } endIndex 结束索引**return**
{ string }
str.substr(startIndex, length)
**params**
{ string } str**params**
{ number } startIndex 开始索引**params**
__ { number } length 截取的长度**return**
{ string }
var str = "123456";
var a = str.slice(1, 3);
var b = str.substring(1, 3);
var c = str.substr(1, 3);
console.log(str); // "123456"
console.log(a); // "23"
console.log(b); // "23"
console.log(c); // "234"
索引获取字符
str.charAt(index)
**_desc_**
根据索引获取字符**params**
{ string } str**params**
{ number } index 索引**return**
{ string }
var str1 = "Hello World";
console.log(str1.charAt(4)); // "o"
查找字符(串)
* 查询字符串时,整个字符串完全匹配才算存在。当字符串完全匹配且返回索引时,返回字符串首个字符对应的索引
**
str.indexOf(el, startIndex)
**desc**
从左至右查询,返回首个匹配字符(串)的索引**params**
{ string } str**params**
{ string } el 需要寻找的字符(串)**params**
{ number } startIndex 查询的起始位置,默认值:0**return**
{ number } 存在返回索引,不存在返回 -1
var str = "Hello World";
console.log(str.indexOf("o")); // 4
console.log(str.indexOf("o", 6)); // 7
console.log(str.indexOf("a")); // -1
console.log(str.indexOf("ll")); // 2
console.log(str.indexOf("ls")); // -1
str.lastIndexOf(el, startIndex)
**desc**
从右至左查询,**返回首个匹配字符(串)的索引****params**
{ string } str_**params**_
{ string } el 需要寻找的字符(串)_params_
** { number } startIndex 查询的起始位置,默认值:str.length - 1 _`return`_ { number } 存在返回索引,不存在返回 -1**
var str = "someone else";
console.log(str.lastIndexOf("o")); // 9
console.log(str.lastIndexOf("o", 2)); // 2。从索引为 2 的位置向左查询
str.search(el)
**desc**
从右至左查询,**返回首个匹配字符(串)的索引****params**
{ string } str_**params**_
{ string } el 需要寻找的字符(串)**return**
{ number } 存在返回索引,不存在返回 -1
var str = "Hello World";
console.log(str.search("o")); // 4
console.log(str.search("a")); // -1
str.includes(el, startIndex)
**desc**
判断字符串中是否存在该元素**params**
{ string } str_**params**_
{ string } el 需要寻找的字符(串)_params_
** { number } startIndex 查询的起始位置,默认值:0 _`return`_ { boolean }**
var str = "Hello World";
console.log(str.includes("ll")); // true
console.log(str.includes("ll", 3)); // false
console.log(str.includes("la")); // false
str.startsWith(el, startIndex)
**desc**
判断字符串是否以该元素开头**params**
{ string } str_**params**_
{ string } el 需要寻找的字符(串)_params_
** { number } startIndex 查询的起始位置,默认值:0 _`return`_ { boolean }**
var str = "Hello World";
console.log(str.startsWith("He")); // true
console.log(str.startsWith("el")); // false
console.log(str.startsWith("el", 1)); // true
**str.endsWith(el, startIndex)**
**desc**
**判断字符串是否以该元素结尾****params**
{ string } str_**params**_
{ string } el 需要寻找的字符(串)_params_
** { number } startIndex 查询的起始位置,默认值:0 _`return`_ { boolean }**
var str = "Hello World";
console.log(str.endsWith("ld")); // true
console.log(str.endsWith("rl")); // false
console.log(str.endsWith("rl", str.length - 1)); // true
替换
**str.replace(oldStr, newStr)**
* 只替换首个匹配的字符(串)。全部替换可使用正则表达式
**params**
{ string } str_**params**_
{ string } oldStr 需要被替换的字符(串)_params_
** { string } newStr 替换的字符(串) _`return`_ { string }**
var str = "Hello World";
console.log(str.replace("l", "3")); // "He3lo World"
console.log(str); // "Hello World"
str.replaceAll(oldStr, newStr)
es12(*2021**) 新特性
* 替换字符串中所有匹配的字符(串)
**params**
{ string } str_**params**_
{ string } oldStr 需要被替换的字符(串)_params_
** { string } newStr 替换的字符(串)**
**return**
{ string }
var str = "Hello World";
var newStr = str.replaceAll("l", "1");
console.log(newStr); // "He11o Wor1d"
重复
**str.repeat(times)**
_
**params**
{ string } str_**params**_
{ number } times 重复的次数**return**
{ string }
var str = "*";
console.log(str.repeat(3)); // "***"
console.log(str); // "*"
合并与拆分
**str.concat(...args)**
* 将 args 转换为字符串类型后,再进行合并
**_desc_**
合并字符串**params**
{ string } str_**params**_
{ any } args 合并的元素**return**
{ string }
var str = "Hello";
var str1 = str.concat("aaa");
var str2 = str.concat([1, 2]);
console.log(str1); // "Helloaaa"
console.log(str2); // "Hello1,2"
**str.split(separator)**
_
**params**
{ string } str_**params**_
{ number } separator 拆分的字符**return**
{ array }
var str = "Hello World";
console.log(str.split("")); // ["H", "e", "l", "l", "o", " ", "W", "o", "r", "l", "d"]
console.log(str.split(" ")); // ["Hello", "World"]
类型转换
String To Array
str.split()
Number To String**
num + “”
Any To String
String(*) *.toString()