生命不息,学习不止

js内置对象 – String字符串对象

str.length:字符串的长度。

var str = 'hello world';
console.log(str.length); // 11

str.trim():删除字符串两边的空格。

var str = ' zhangsan ';
console.log(str); // zhangsan

str.concat(str1,str2,…):合并字符串。

var str = 'hello';
var res = str.concat(' world');
console.log(res); // hello world

str.split(str):将字符串以指定字符切割。

var str = 'Amy#John#Jeff';
var arr = str.split('#');
console.log(arr); // ['Amy', 'John', 'Jeff']

str.search(str|reg):在字符串中搜索指定字符,返回对应的位置,不存在返回-1。

var str = 'this is a lucky dog';

// 在str查找is字符
console.log(str.search('is')); // 2

// 在str中根据正则查找匹配内容
console.log(str.search(/is/)); // 2

str.match(str|reg):在字符串中匹配指定字符,存在返回数组,不存在返回null。

var str = 'this is a lucky dog';

console.log(str.match('is')); // ["is", index: 2, input: "this is a lucky dog"]
console.log(str.match(/is/)); // ["is", index: 2, input: "this is a lucky dog"]

str.replace(str1|reg,str2):用str2替换str1的值。

var str = 'this is a lucky dog';

console.log(str.replace('is', 'are')); // thare is a lucky dog
console.log(str.replace(/is/g, 'are')); // thare are a lucky dog

str.slice(start,end):获取字符串中指定的片段(不包含结束位置)。

var str = 'abcdefg';

// 获取str的从索引1开始到结束位置的字符
console.log(str.slice(1)); // bcdefg

// 获取str的从索引1到索引4(不包含)位置的字符
console.log(str.slice(1,4)); // bcd

// 获取str的从索引-4到索引-1(不包含)位置的字符
console.log(str.slice(-4,-1)); // def

str.substr(start,length):获取字符串start开始,length个字符。

var str = 'abcdefg';
console.log(str.substr(2)); // cdefg
console.log(str.substr(2,4)); // cdef

注意:
1. start为负值在部分浏览器支持,所以不推荐使用

str.substring(start,end):获取从start位置开始到end位置(不包含)的字符。

var str = 'abcdefg';
console.log(str.substring(2)); // cdefg
console.log(str.substring(2,4)); // cd

注意:
1. 如果start > end,则交换位置 
2. start,end超过str.length,则为str.length
3. start == end,则返回''
4. 不支持负值,slice的功能比substring()强大

str.indexOf(str):获取字符串中指定字符的位置,不存在返回-1。

var str = 'this is a lucky dog';

// 在str查找is字符
console.log(str.indexOf('is')); // 2

str.lastIndexOf(str):获取字符串中指定字符最后出现的位置,不存在返回-1。

var str = 'this is a lucky dog';

// 在str查找is字符
console.log(str.lastIndexOf('is')); // 5

str.toUpperCase():转换字符串中的英文单词字母为大写字母。

var str = 'This is a beautiful girl';
console.log(str.toUpperCase()); // THIS IS A BEAUTIFUL GIRL

str.toLowerCase():转换字符串中的英文单词字母为小写字母。

var str = 'This is a beautiful girl';
console.log(str.toLowerCase()); // this is a beautiful girl

str.charAt(num):获取指定位置的字符。

var str = 'hello world';
console.log(str.charAt(6)); // w

str.charCodeAt(num):指定位置的字母对应的Unicode编码。

var str = 'hello world';
console.log(str.charCodeAt(6)); // 119 w字母对应的Unicode值为119(开头的 128 个 Unicode 编码单元和 ASCII 字符编码一样)

// 简体中文
console.log('我是中国人'.charCodeAt(0)); // 25105
console.log('我是中国人'.charCodeAt(1)); // 26159
console.log('我是中国人'.charCodeAt(2)); // 20013
console.log('我是中国人'.charCodeAt(3)); // 22269
console.log('我是中国人'.charCodeAt(4)); // 20154

// 繁体中文
console.log('我是中國人'.charCodeAt(3)); // 22283
console.log('繁體'.charCodeAt(0)); // 32321
console.log('繁體'.charCodeAt(1)); // 39636

String.fromCharCode():将Unicode编码转为字符。

console.log(String.fromCharCode(119)); // 2
console.log(String.fromCharCode(20014)); // 丮
console.log(String.fromCharCode(30014)); // 甾
赞(1)
未经允许不得转载:Mxue note » js内置对象 – String字符串对象