字符串在底层字符串是以数组的形式存储的

string对象的属性

length属性:用来获取字符串的长度
str.length; //返回值为字符串长度

string对象的方法

var str = "Hello";

chartAt()

可以返回字符串中指定位置的字符
str.charAt(0); //返回"H",等同于str[0]

charCodeAt()

返回指定位置的Unicode编码

fromCharCode()

根据Unicode编码来返回字符
result = String.fromCharCode(73); 返回“H”
此方法需要通过构造函数对象调用

indexOf()

检查一个字符串是否含有指定内容
如有,则返回其第一次出现的索引
如没有,则返回-1
str.indexOf("l"); //2
str.indeaOf("s"); //-1

lastIndexOf()

从后往前检索第一个出现的指定内容
如有,则返回其第一次出现的索引
如没有,则返回-1

slice()

从字符串中截取指定内容,同数组使用此方法相同
result = str.slice(0,2); //"He"
包头不包尾

substring()

截取字符串,用法同slice相同
异:此方法传递负值则默认使用0
可自动交换参数,小的在前
str.substring(0,3) str.substring(3,0) str.substring(-3,3) str.substring(NaN,3)
返回值均为”Hel”

split()

可以将字符串拆分成一个数组,传两个参数:

  1. 指定表示每个拆分应发生的点的字符串。即字符串每遇到a则拆分,作为一个字符串数据,被当作数组元素
  2. 一个整数,限定返回的分割片段数量。即限定数组元素长度为b ```javascript const str = ‘The quick brown fox jumps over the lazy dog.’;

const arr = str.split(‘o’,3); console.log(arr); // > Array [“The quick br”, “wn f”, “x jumps “]

  1. <a name="Xurzi"></a>
  2. #### toLowerCase()/toUpperCase()
  3. 把字符串转为小写/大写
  4. <a name="Hu0NB"></a>
  5. # 与正则表达式相关方法补充
  6. <a name="jU5f0"></a>
  7. #### split():拆,将字符串拆分成为一个数组
  8. 方法使用指定的分隔符字符串将一个[String](https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Global_Objects/String)对象分割成子字符串数组,以一个指定的分割字串来决定每个拆分的位置。 <br />无需加g即可全局查找<br />返回源字符串以分隔符出现位置分隔而成的一个 [Array](https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Global_Objects/Array)
  9. ```javascript
  10. var str = "1a2b3c4d5";
  11. console.log(str.split(/[A-z]/)); //['1','2','3','4','5']

search():搜,搜索字符串中是否有指定内容

方法执行正则表达式和 String 对象之间的一个搜索匹配。
用法同indexof相同,但此方法可接受正则表达式作为参数,可根据正则表达式检索字符串
不能全局查找,加g也不行
如果匹配成功,则 search() 返回正则表达式在字符串中首次匹配项的索引;否则,返回 -1。

  1. var str = "abc 123 aec hello";
  2. console.log(str.search(/a[be]c/)); //0

match():取,从字符串中提取符合条件的内容

方法检索返回一个字符串匹配正则表达式的结果。

  1. var str = "1a2b3c4d5";
  2. str.match(/A-z/); //a
  3. str.match(/A-z/g); //a,b,c,d

replace():换,将字符串中指定内容替换为新内容

replace(a,b) 方法返回一个b替换a后的新字符串。
a可以是一个字符串或者一个正则表达式,b可以是一个字符串或者一个每次匹配都要调用的回调函数。
如果a是字符串,则默认仅替换第一个匹配项。(可加g改变)

  1. var str = "dog,cat,dog";
  2. console.log(str.replace('dog', 'monkey')); //"monkey,cat,dog"
  3. console.log(str.replace(/dog/g, 'monkey')); //"monkey,cat,monkey"