吐槽一句:我他妈贼烦js。。。 在JavaScript中字符串(string)是一组由16位值组成的不可变的有序序列。 JavaScript采用UTF-16编码的字符集作为字符串。 var s = "
吐槽一句:我他妈贼烦js。。。
在JavaScript中字符串(string)是一组由16位值组成的不可变的有序序列。
JavaScript采用UTF-16编码的字符集作为字符串。
var s = "hello, world";
s.charAt(0); //返回第一个字符的拷贝.
s.slice(1, 4); //返回下标为1到下标为3的字符的拷贝.(注意是左闭右开区间).
s.indexOf("e"); //返回 'e' 第一次出现的地方的下标.
s.lastIndexOf("e"); //返回'e'最后一次出现的地方的下标.
s.split(","); //以 ','作为分割点把原字符串的副本且为几个并返回.
s.replace("h", "H"); //返回的 "Hello, world", 这里并不是对s中的字符串进行操作而是对它副本操作后返回的.
s.toUpperCase(); //返回"HELLO,WORLD",这里也是对副本进行操作然后返回副本的.
NOTE: 在JavaScript中字符串是固定不变的!!!!!!!!!(你说js恶心不恶心).
看个demo:
var s = "hello, wordl";s.len = 4;var t = s.len;console.log(t); //undefined!!!!!!!!!!!!!!!
为什么会是undefined呢? 因为s是个string是不可改变的,第二句在s中加属性其实是在s的副本中加的!