JavaScript/Strings
外观
Javascript中的字符串是一种类数组,采用UTF-16编码的Unicode字符集。每个字符串在内存中都是一个16位值组成的序列。js对字符串的各项操作均是在对16位值进行操作,而非字符。
“\”后面的第一个字符不会被解析为字符,这就是js的转义字符:
- \o NUL字符
- \b 退格符
- \t 水平制表符
- \n 换行符
- \v 垂直制表符
- \f 换页符
- \r 回车符
- \“ 双引号
- \' 撇号或单引号
- \\ 反斜线
- \xXX 由两位十六进制数xx指定的latin-1字符
- \uXXXX 由四位十六进制数XXXX指定的Unicode字符
常用字符串方法示例:
var s="hellow,pomelott";
console.log(s.charAt(0)); //h
console.log(s.charAt(s.length-1)); //t
//substring(开始,结束)
// 1.从下标1开始(包括)到下标4结束(不包括)
//2. substring()参数不支持负数
console.log(s.substring(1,4)); //"ell"
///slice(起始,结束)
//1. 若起始位数字为负数,则从倒数开始;
//2.结束位数字可选,缺省表示从开始为到字符串末尾切割
console.log(s.slice(1,4)); //"ell"
console.log(s.slice(-3)); //"ott"
//s.indexOf("x") x首次出现的位置,不存在则返回-1
console.log(s.indexOf("l")); //2
console.log(s.indexOf("z")); //-1
console.log(s.indexOf("o",6)); //o在位置6之后首次出现的位置,不存在返回-1
//s.lastIndexOf("x") x最后出现的位置,不存在则返回-1
console.log(s.lastIndexOf("o")); //12
console.log(s.lastIndexOf("z")); //-1
console.log(s.split(",")); //根据“,”将字符串转换为数组
console.log(s.replace("o","O")); //hellOw,pomelott 将第一个“o”替换为“O”
console.log(s.toUpperCase()); //全文转换为大写
var str1="hellow,";
var str2="world";
console.log(str1.concat(str2)); //hellow,world 字符串连接
//search() 方法用于检索字符串中指定的子字符串,或检索与正则表达式相匹配的子字符串。
console.log(s.search(/pomelo/)); //7 存在则返回首字符下标,不存在则返回-1
//match() 方法可在字符串内根据正则表达式检索,若存在则返回检索后的对象,否则返回null
console.log(s.match(/pomelo/)); //["pomelo", index: 7, input: "hellow,pomelott"]
console.log(typeof s.match(/pomelo/)); //object
console.log(s.match("pop")); //null