Javascript中的内置对象—String
我们在与页面交互时的数据,与服务端交互时的数据,都以String的形式呈现,所以我们在实现页面效果时大部分时间在处理字符串的问题?那么原生字符串中究竟有哪些方法供我们使用呢?想要彻底解决这些问题,就要系统的解析字符串的方法,那么我们今天就来深度解析一下这个问题哈。
什么是字符串?
字符串:从字面意思理解,就是将若干文字或符号连接在一起的一串字符,称为字符串。从表现形式上看呢,就是写在引号中的数据,都称为是字符串,而且不区分单双引。
如何声明字符串?
1. 字面量方式:‘’ “”
2. 构造函数方式:new String()
//声明字符串
var str = 'hello'; //字面量声明方式
var o_str = new String('hello'); //构造函数声明方式
//在使用中没有区别,但是在检测数据类型的是一定的区别。
console.log(typeof str); //返回结果: 'string'
console.log(typeof o_str); //返回结果:'object'
String的属性
length : 表示字符串的长度(即字符串中有多少个字符)
var str = '中华人民共和国';
console.log(str.length); // 7 表示有7个字符
字符串的方法(查、替、截、转)
查
indexOf('字符串',start)
1. '字符串' : 要查找的字符串
2. start : 指定从哪个下标开始查找
· 作用:返回指定字符串在父串中首次出现 的下标位置。
· 返回值:返回下标值
· 是否影响原字符串:否
//声明一个字符串
var str = 'how do you do?';
console.log(str.indexOf('do')); // 4 返回do第一次出现时的下标,这里只返回字符串中第一个字符的下标
console.log(str.indexOf('do',5)); //11 从5下标开始向后查找,do第一次出现的下标是11
lastIndexOf('字符串',start)
· 作用:返回一个字符串最后出现的位置。
· 返回值:返回下标值
· 是否影响原字符串:否
//声明一个字符串
var str = 'how do you do?';
console.log(str.lastIndexOf('do')); // 11 返回do最后一次出现时的下标,这里只返回字符串中第一个字符的下标
console.log(str.lastIndexOf('do',5)); //4 查找截止到5下标,do最后一次出现的下标是4
charAt(index) : index-下标
· 作用:根据下标获取指定的字符
· 返回值:返回字符
· 是否影响原字符串:否
//声明一个字符串
var str = 'how do you do?';
console.log(str.charAt(4)); // 'd' 返回4下标对应的字符d
//遍历字符串
for(var i = 0,len = str.length;i < len;i ++){
console.log(str.charAt(i)); //从字符串中遍历出每一个字符,进行处理
}
charCodeAt(index) :index-下标
· 作用:根据下标查找指定字符的编码值。
· 返回值:返回字符编码
· 是否影响原字符串:否
//声明一个字符串
var str = 'how do you do?';
console.log(str.charCodeAt(4)); // 100 返回4下标对应的字符d的编码值
替
replace(旧串,新串)
· 旧串: 被替换的字符串
· 新串: 要替换成的字符串
· 作用:在父串中将指定的字符串替换成新的字符串(注:一次只能替换一个字符串)。
· 返回值:返回替换后的新字符串
· 是否影响原字符串:否
//声明一个字符串
var str = 'how do you do?';
console.log(str.replace('do','de')); // 'how de you do' 将第一个do替换成了de
截
substring(start,end)
· start : 从哪个下标位置开始
· end : 到哪个下标位置结束(不包含结束位置)
· 作用:截取字符串中指定范围的子串。
· 返回值:被截取到的字符串
· 是否影响原字符串:否
substr(start,length)
· start : 从哪个下标位置开始
· length : 截取指定的长度
· 作用:截取指定长度的子串
· 返回值:被截取到的字符串
· 是否影响原字符串:否
slice(start,end)
· start : 从哪个下标位置开始
· end : 到哪个下标位置结束(不包含结束位置)
· 作用:截取字符串中指定范围的子串。
· 返回值:被截取到的字符串
· 是否影响原字符串:否
//声明一个字符串
var str = 'how do you do?';
console.log(str.substring(4)); // 'do you do?' 从下标4开始截取到字符串末尾
console.log(str.substr(4)); // 'do you do?' 从下标4开始截取到字符串末尾
console.log(str.slice(4)); // 'do you do?' 从下标4开始截取到字符串末尾
console.log(str.substring(4,6)); // 'do' 从下标4开始截取到下标6(不包含下标6位置的字符)
console.log(str.substr(4,6)); // 'do you' 从下标4开始截取6个字符
console.log(str.slice(4,6)); // 'do' 从下标4开始截取到下标6(不包含下标6位置的字符)
console.log(str.substring(6,4)); // 'do' 从下标4开始截取到下标6(不包含下标6位置的字符)(substring总是从小的下标开始截取到大的下标,在方法中做了参数的交换)
console.log(str.substr(4,6)); // 'do you' 从下标4开始截取6个字符
console.log(str.slice(6,4)); // '' 从6下标开始截取到4下标,但是后面没有4下标,所以截取到空字符串。
console.log(str.substring(-6,-4)); // '' 从下标-6开始截取到下标-4(substring的参数不支持负数,所以截取到空字符串)
console.log(str.substr(4,6)); // 'do you' 从下标4开始截取6个字符
console.log(str.slice(-6,-4)); // 'ou' 从-6下标开始截取到-4下标,最后一个字符为-1,依次向前-2,-3,…… ,所以-6对应的是o,截取现-4对应的是空格,不包含-4下标的字符,所以截取到'ou'
转
toUpperCase()
· 作用:将字符串中的小写字母全部转为大写字母。
· 返回值:返回转换后的字符串
· 是否影响原字符串:否
var str = 'How Are You';
console.log(str.toUpperCase()); //'HOW ARE YOU' 转为大写字母
toLowerCase()
· 作用:将字符串中的大写字母全部转为小写字母。
· 返回值:返回转换后的字符串
· 是否影响原字符串:否
var str = 'How Are You';
console.log(str.toLowerCase()); //'how are you' 转为小写字母
split('切割符',length)
· 作用:将数组切割为数组。
· 返回值:返回转换后的数组
· 是否影响原字符串:否
var str = 'how are you';
console.log(str.split(' ')); //['how','are','you'] 以空格作为切割符,切成三个字符串,分别放到数组中。
console.log(str.split(' ',2)); //['how','are'] 以空格作为切割符,切成三个字符串,第二个参数表示将前面2个字符串,分别放到数组中。
- End -
猜你喜欢LIKE
相关推荐HOT
更多>>article标签是什么元素?有什么作用
article标签是 HTML5 中的元素,用于定义一个独立的、完整的内容单元,通常包含文章、博客、新闻、评论等内容。增强可读性:使用 标签可以使页...详情>>
2023-04-20 16:19:55什么是linux系统内核?什么是linux发行版
Linux 是一个开源操作系统,由内核和许多其他的软件组成。其中,Linux 内核是操作系统的核心,负责管理计算机的硬件资源和提供基本的系统功能,...详情>>
2023-03-03 10:57:37数据埋点(Data buried point)的应用价值剖析
数据埋点指在应用中特定的流程中收集一些信息,用来跟踪应用使用的状况,后续用来进一步优化产品或是提供运营的数据支撑。比如访问数(Visits),...详情>>
2023-02-08 17:38:00web前端技术干货-iframe
在这个网页中,同时在一个页面中展示了三个网站:千锋教育官网、千锋教育HTML5大前端官网、千锋教育HTML5大前端好程序员官网。这是如何做到的呢...详情>>
2022-12-27 16:23:13热门推荐
java异常分类三大类是什么?
沸常用的maven打包命令有哪些?
热article标签是什么元素?有什么作用
热js引用数据类型有哪些
新什么是枚举?没有枚举之前怎么做的
javascript中如何搜索数组元素
css阴影效果属性:box-shadow属性
echarts和chart的优缺点对比
mybatis通用mapper的使用方法
ui设计之js效果-如何制作文字倒计时
svn与git的区别是什么?使用git的优势是什么
什么是linux系统内核?什么是linux发行版
Linux三剑客之-sed
JumpServer堡垒机部署及恢复