js基本包装类型String类型常用属性和方法总结
一、length属性:
每个字符串都有一个length属性,返回字符串的长度。
var str1 = "Hello String"; console.log(str1.length); // 12
二、字符串方法 charAt()、charCodeAt()
1、charAt(索引):参数是字符串索引,返回对应的字符;
var str2 = "Hello String"; console.log(str2.charAt(1)); // e 返回字符串索引1位置的字符
2、charCodeAt(索引):参数是字符串索引,返回对应索引字符的字符编码
var str3 = "Hello CharCodeAt"; console.log(str3.charCodeAt(1)); //101 返回字符串索引1位置字符的字符编码
三、截取方法slice()、substr()、substring()
1、slice():截取字符串
参数四种情况
(1)、当传两个参数,第一个参数是截取的开始位置的索引,第二个位置是截取的结束位置的索引,返回被截取的字符串,返回值不包含结束位置的字符串;
(2)、当传一个参数返回当前参数索引之后的所有字符串;
当传负参数时,slice()会把负数加上字符串了length,所得数替换对应参数;
(3)、当不传参数返回整个字符串;
(4)、当传不存在的索引返回空;
var str4 = "Hello slice"; console.log(str4.slice(1,2)); // 2 传入两个参数时,返回被截取的字符串,返回值不包含结束位置的字符串; console.log(str4.slice(1)); // ello slice 传入一个参数时 console.log(str4.slice(-5,-4)); // s 参数是负数情况,将负数加上字符串的length,所得值替换原来位置 console.log(str4.slice()); // Hello slice 不传参数情况,返回整个字符串
2、substr():截取字符串
参数四种情况:
(1)、传入两个参数时,第一个参数是截取的开始位置的索引,第二个参数是指定返回字符串的个数;
(2)、传入一个参数时候,返回当前参数索引之后的所有字符串
(3)、传入负数时,substr()会把第一个参数加上字符串的length,所得数替换第一个参数,第二个参数会直接转换成0,返回空
(4)、传入空时,直接返回全部字符串
var str5 = "hello substr"; console.log(str5.substr(1,2)); // el 两个参数情况,第一个参数截取的起始位置,第二个参数是截取的个数 console.log(str5.substr(1)); // ello substr 一个参数情况,返回参数之后的所有字符串 console.log(str5.substr(-1,-2)); // 空 参数是负数时,第一次参数加上字符串length所得数替换原来参数,第二个参数直接转换成0 console.log(str5.substr()); // hello substr 传入空时候 返回所有字符串
3、substring():截取字符串
参数四种情况:
(1)、传入两个参数时候,第一次参数是截取起始位置,第二个参数是结束位置,返回值不包含结束位置字符
(2)、传入一个参数时候,返回参数之后的所有字符串
(3)、传入负数时候,会把所有负数直接转换成0
(4)、传入空时,返回所有字符串
var str6 = "hello substring"; console.log(str6.substring(1,2)); // e 两个参数返回值不包含结束位置字符 console.log(str6.substring(1)); // ello substring 一个参数时候,返回参数之后的所有字符串 console.log(str6.substring(-1,-2)); // 空 负数时会把所有负数参数都转换成0 console.log(str6.substring()); // hello substring 没有参数时,返回所有的字符串
四、查找方法indexOf()和lastIndexOf()
两个方法用法都一样,indexOf()从前开始查找,lastIndexOf()从后开始查找
返回值都是对应字符第一次出现的索引;
当查找不到返回-1
参数(“查找的字符”,“从哪里开始查找的索引(可选参数)”)
var str7 = "hello indexOf" console.log(str7.indexOf("o")); // 4 console.log(str7.indexOf("o",5)); // -1 查找“o”,从索引 5开始查找,查找没有结果,返回-1 lastIndexOf()用法一样
五、trim()去掉空格方法
trim():去掉首尾空格
trimLeft():去掉首部空格
trimRight():去掉末尾空格
var str8 = " hello trim "; console.log(str8.tirm()); // "hello trim"; console.log(str8.tirmLeft()); // "hello trim " console.log(str8.tirmRight()); // " hello trim"
六、配置模式match()、search()、replace()、split()
1、match():参数是字符串或者RegExp对象的正则表达式。返回是一个数组
var text = "cat,bat,sat.fat 4000 "; var pattern = /.at/; var matchs = text.match(pattern); // 返回一个数组 与pattern.exec(text); 方法相同 conosle.log(matchs.index); // 0 console.log(matchs[0]); // "cat" console.log(pattern.lastIndex); // 0
2、search():参数是字符串或者RegExp对象的正则表达式,返回字符串中第一个匹配的索引,如果没有找到匹配,则返回-1,search()方法始终从字符串开头向后面查找
var str8 = "cat,bat,sat,fat"; var pos = str8.search(/at/); console.log(pos); // 1 at在字符串中第一次出现的位置
3、replace():接收两个参数,第一个参数可以是一个 RegExp 对象或者一个字符串(这个字符串不会被转换成正则表达式),第二个参数可以是一个字符串或者一个函数。如果第一个参数是字符串,那么只会替换第一个子字符串。要想替换所有子字符串,唯一的办法就是提供一个正则表达式,而且要指定全局( g )标志
var text = "cat, bat, sat, fat"; var result = text.replace("at", "ond"); alert(result); //"cond, bat, sat, fat" result = text.replace(/at/g, "ond"); alert(result); //"cond, bond, sond, fond"
4、split():基于指定的分割符,将一个字符串分割成多个子字符串,返回一个数组;(可以理解为是将字符串转换为数组的方法)
var str = "yellow,red,blue,green"; console.log(str.split(',')); // ["yellow","red","blue","green"]
七、localeCompare()比较两个字符串
返回值 -1、0、1
1、如果字符串在字母表中应该排在字符串参数之前,返回一个负数(大多数情况返回-1)
2、如果字符串等于字符串参数,则返回0
3、如果字符串在字母表中应该排在字符串参数之后,返回一个正数(大多数情况返回1)
var str9 = "yellow"; console.log(str9.localeCompare("brick")); // 1 console.log(str9.localeCompare("yellow")); // 0 console.log(str9.localeCompare("zoo")); // -1
八、 fromCharCode() 方法
这个方法的任务是接收一或多个字符编码,然后将它们转换成一个字符串。
console.log(String.fromCharCode(104,101,108,108,111)); // "hello"
九、大小写转换
toLowerCase():转换成小写,
toUpperCase():转换成大写;常用的方法
toLocalseLowerCase():转换成小写,
toLocalseUpperCase():转换成大写。针对特定的地区使用这两方法
var str6 = "hello world"; var str6s = str6.toLocaleUpperCase(); console.log(str6s)
十、ES6的字符串方法
在es6中有一大部分是处理unicode,这部分平时用的很少。记得就行了,万一用到了再去查
1、includes(), startsWith(), endsWith()
let str = 'abc' str.includes('a') //是否包含 str.startsWith('a') //字符串开始位置是否包含 str.endsWith('c') //字符串结束位置是否包含
2、repeat 原来都认为这个就是替换,如今有了更多的用法
相信再开发中经常会碰到需要造假数据,有时候甚至需要很长的。有了这个后就可以方便的造重复数据了
'abc'.repeat(10) //参数给多少,字符串就重复多少次,很方便
3、padStart(),padEnd()
常用于日期补足2位 如: 2017-1-1 想改成 2017-01-01
'1'.padStart(2, '0') //第一个参数是限制字符串的长度,第二个要补的内容 '1'.padEnd(2, '0') //这个是从结尾处补足
4、字符串模板,这个用的比较多。
let a = 'a' let b = 'b' //曾经 console.log(a+b+'c') //曾经几何都是这么用的,如果碰上拼接html还带属性的,那单双引号拼的你头大,虽然这么作本来就不好,但是仍然很多人在用。 //现在 console.log(`${a}${b}c`) / console.log(`${a+b}c`) //把变量用${} 包起来就行了。简单多了。没有那么多单双引,没有加号
5、标签模板
function str(str, v1, v2){} str `aaa${a} ${b} aaa` //这个写法就相当于把这个字符串传到了function里,里面的参数第一个是纯字符串(被变量隔开后,以数组形式展示),从第二个开始就是字符串里的变量了,有几个变量后面就有几个参数
6、raw
String.raw `abc\nddd` //比如字符串里有\n 输出后不会换行,而直接显示\n
- JS基础之String包装类型的属性和方法
- 28 JS基础之--String包装数据类型方法总结
- js中String对象和Array对象的常用方法和属性
- js学习笔记:基本包装类型——String
- js中字符串基本数据类型能调用属性和方法的原理
- C#中string类型的常用方法总结
- python 基本数据类型常用方法总结
- string基本字符序列容器(竞赛时常用的使用方法总结)
- 第190天:js---String常用属性和方法(最全)
- JS教程:String对象及其常用属性以及方法
- 黑马程序员--常用API(String、基本数据类型的包装类、System、Runtime、Date、Calendar、Math)
- Js基本数据类型常用方法扩展(基本数据处理)
- 总结Silverlight与HTML页面交互基本方法(js调用Silverlight方法/属性 和Silverligth调用页面js方法)
- String类型、Number类型、Object类型、Array类型的基本方法总结
- 黑马程序员_String和基本类型对象包装类总结
- 第191天:js---Array常用属性和方法总结
- 对js中的引用类型的理解(6)——基本包装类型(Booelean、Number、String)
- js常用属性及方法总结(温习下旧知识)
- 每日学习心得:Js基本数据类型常用方法扩展
- 每日学习心得:Js基本数据类型常用方法扩展