javascript中string常用方法,欢迎补充

/*
* 字符方法
* charAt(num):  接受基于0的字符位置的参数,返回该位置所在的字符
* charCodeAt(num): 接受基于0的字符位置的参数,返回该位置所在的字符的编码
*/
var str = 'hello world!';
console.log(str.charAt(1)); // e
console.log(str.charCodeAt(1));  // 101

/*
* 字符串的操作方法
* concat(): 接受一个或多个参数,用于将一个或多和字符串拼接起来,等同于 +
* slice(start, end)
* substr(start, length)
* substring(start, end)
*/
var str2 = 'china';
console.log(str2.concat('你好!','我爱你','。'));
console.log(str2+'你好!'+'我爱你。')

/*
* 字符串的位置方法
* indexOf(str, start): str(必填),表示要查找的字符串, start(选填),表示从哪个位置开始查找, 返回查找的字符串所在的位置,未找到返回-1
* lastIndexOf(str, start): 反向查找,传入参数与indexOf()一致
*/
var str3 = 'abcabdbcabac';
var arr = [];
console.log(str3.indexOf('ab'));
var index = str3.indexOf('ab');
while(index > -1) {
    arr.push(index);
    index = str3.indexOf('ab', index+1);
}
console.log(arr)    // [0,3,8]

/*
* 去除字符串首尾空格方法
* trim(): 创建一个字符串副本,删除首尾空格
* trimLeft(): 删除首部空格
* trimRight(): 删除尾部空格
*/
var str4 = ' hello world! ';
console.log(str4.trim()) 

/*
* 字符串大小写转化
* toLowerCase(): 转化为小写  toLocaleLowerCase() 针对特定地区实现
* toUpperCase():转化为大写  toLocaleUpperCase() 针对特定地区实现
*/
var str5 = 'hello World';
console.log(str5.toLowerCase()) // hello world
console.log(str5.toUpperCase()) // HELLO WORLD

/*
* 字符串的模式匹配方法
* match(): 只接受一个参数,一个正则表达式或者一个RegExp对象,返回一个捕获组匹配的字符串数组
* search(): 只接受一个参数,一个正则表达式或者一个RegExp对象,返回第一个捕获组匹配的字符串的索引,若未找到,返回-1
* replace(): 接受两个参数,第一个参数是正则表达式或者一个RegExp对象,第二个参数是查找捕获要替换的字符串或一个函数func(match,pos,originalText),match:模式的匹配项;pos:模式匹配项在字符串中的位置;originalText:原始字符串
* split(): 接受两个参数,第一个是指定的分隔符(字符串或者正则表达式,该方法不会将字符串当成正则表达式),第二个参数是指定数组长度,返回一个分割后的数组
*/
var str6 = 'car,aat,bat,fat';
var pattern = /(.at)/g;
var result = str6.match(pattern);
console.log(result); // ["aat", "bat", "fat"]

console.log(str6.search(pattern))   // 4

console.log(str6.replace(pattern,"bat"))    // car,bat,bat,bat
console.log(str6.replace(pattern,"bat $&"))    // car,bat aat,bat bat,bat fat
console.log(str6.replace(pattern,"bat $'"))    // car,bat ,bat,fat,bat ,fat,bat
console.log(str6.replace(pattern,"bat $`"))    // car,bat car,,bat car,aat,,bat car,aat,bat,
console.log(str6.replace(pattern,"bat $1"))    // car,bat aat,bat bat,bat fat

console.log(str6.split(','))    // ["car", "aat", "bat", "fat"]
console.log(str6.split(',',2))  // ["car", "aat"]
console.log(str6.split(/[^\,]+/))

/*
* 两个字符串比较
* localeCompare(): 传入一个参数作为比较,返回特定的值
* str1.localeCompare(str2): 若str1字母表位置在str2前,则返回-1  若str1等于str2,则返回0  若str1字母表位置在str2后,则返回1
*/
var str7 = 'abc';
console.log(str7.localeCompare('bcd'))  // -1
console.log(str7.localeCompare('abc'))  // 0
console.log(str7.localeCompare('aac'))  // 1
console.log(str7.localeCompare('abc-2'))  // -1

/*
* 将字符串编码转化为字符串
* fromCharCode(): 是String构造函数本身的一个静态方法 与charCodeAt()执行相反的操作
*/
console.log(String.fromCharCode(104,101,108,108,111))   //hello
发布了18 篇原创文章 · 获赞 5 · 访问量 1万+

猜你喜欢

转载自blog.csdn.net/Yw_better/article/details/102773201