JS字符串的概念
字符串就是一串字符,由双(单)引号括起来。
字符串是 JavaScript 的一种数据类型。
字符串的定义
方式一(推荐):
var str = '亲'; //基本类型
定义了一个字符串变量str,内容为’亲’
方式二:
var str = new String('hello'); //引用类型
定义一个字符串变量str,内容为hello,
注意: 此刻str为引用类型(object对象)
用new产生的变量都是引用类型的变量,也叫对象
方式三:
var str = String("hello");
值类型: string, number, boolean, undefined,null等
引用类型/对象: Array , Date, Object, String, Function等
new String()和String()的区别
var s1 = new String("hello world");
var s2 = String("hello world");
console.log(typeof s1); //object
console.log(typeof s2); //string
字符串的属性
length 字符串的长度
字符串的方法(函数)
charAt:通过指定的下标得到 字符与[index]的作用是一致;
charCodeAt(0):通过指定的下标,返回该字符串的ASCII码
ASCII(American Standard Code for Information Interchange,美国标准信息交换代码)
str.concat(); 连接字符串
例如:
var str1 = "hello";
var str2 = str1.concat(“ world”);
字符串的查找方法
str.indexOf(“abc”); 查找字符串第一次出现的位置, 如果没找到则返回-1
例如:
var str = "abcdabcd";
var subStr = “bcd”;
var index = str.indexOf(subStr);
str.lastIndexOf(“abc”); 查找字符串最后一次出现的位置,如果没找到则返回-1
例如:
var index = str.lastIndexOf("abc");
str.search(); 正则匹配 (返回第一次出现的位置)
例如:
var str = "Abcdabcd";
var index = str.search(/abc/gi);
注: g表示进行全局匹配,i表示匹配的时候忽略大小写
str.replace(); 替换字符串
例如:
var str = "how are Are are you!";
var newStr = str.replace("are", "old are");
这里的替换只能执行一次,不能够进行全局匹配,如果需要全局匹配,则应使用正则表达式:
str.replace(/are/gi, "old are")
str.substring(start,end);
截取字符串 范围是[start, end)
例如:
var str = "Hello world!";
console.log(str.substring(2,5));
注: 如果只有一个参数, 则表示到字符串最后
str.split(separator, howmany);
根据分隔符、拆分成数组
separator(字符串或正则表达式)
howmany(可以指定返回的数组的最大长度, 可以省略)
注:如果空字符串(“”)用作separator, 那么stringObject中的每个字符之间都会被分割。
str.toLowerCase(); 把字符串转换成小写
str.toUpperCase(); 把字符串转换成大写