写点什么

盘点 JavaScript 哪些常用的字符串对象

作者:前端史塔克
  • 2021 年 12 月 08 日
  • 本文字数:1612 字

    阅读完需:约 5 分钟

回顾

上一篇中我们聊了聊 js 中的数组对象,在数组对象中我们看到了关于 js 内置方法对数组进行处理,常用的 push、pop 等,除此之外还有对数组进行排序或者反转等方法,在往后的工作中是非常常用,所以需要熟练掌握。


这一篇来看看常用的字符串对象

字符串对象

基本包装类型

在 js 中提供了三个基本包装类型:String、Number、Boolean。一般在创建、赋值、销毁会经历三种顺序。


  • 把简单数据类型包装为复杂数据类型


var temp = new String('andy')
复制代码


  • 把临时变量的值给 str


str = temp
复制代码


  • 销毁这个临时变量


temp = null
复制代码


注意:在上述的这种情况下,虽然看上去可以改变内容了,但是其实是地址变了,内存中开辟了一个新的空间。然后箭头指向了另一个空间,看上去值会发生变化。到最后 js 执行完会浏览器会执行垃圾清理机制 清理掉不用的变量释放内存空间

根据字符串返回位置

  • indexOf 和 数组中的对象是相似的,如果没找到返回 -1,可以加上指定位置查找元素


// 字符串对象,根据字符返回位置  str.indexOf('要查找的字符', [起始的位置])var str = '故事的小黄花'console.log(str.indexOf('小'))console.log(str.indexOf('小', [4])) // 从第4个开始,没找到返回-1
复制代码



根据位置返回字符

  • charAt(index) 返回指定位置的字符(index 字符串的索引号)

  • charCodeAt(index) 获取指定位置处字符的 ASCII 码(index 索引号) - 判断用户按下了哪个键


// 根据位置返回字符// 1、charAt(index) 根据位置返回字符var str = 'andy'console.log(str.charAt(2)); 
for (var i = 0; i < str.length; i++) { console.log(str.charAt(i))}
// 2、charCodeAt(index) 返回相应索引号的字符ACSCII值, 目的:判断用户按下了那个键console.log(str.charCodeAt(0)) // 97console.log(str[0]) // a
复制代码



字符串操作方法

  • concat(str1, str2) concat()方法用于连接两个或多个字符串,拼接字符串


// 1、str.concat('') 拼接字符串,但是一般都用 + 号var str = 'andy'console.log(str.concat('red'))
复制代码


  • substr(start, length) 从 start 位置开始(索引号),length 取的个数


// 2、substr('截取的起始位置', '截取几个字符')var str1 = '故事的小黄花'console.log(str1.substr(2, 2)) // 的小
复制代码


  • replace('被替换的字符', '替换为的字符') 替换字符串


// 3、替换字符 replace('被替换的字符', '替换为的字符')var str2 = 'andyandy'console.log(str2.replace('a', 'b')) // 只能替换第一个
复制代码


  • split('分隔符') 字符转换为数组


// 4、字符串转换为数组 split('分隔符')  前面学过 join 把数组转换为字符串var str3 = 'red, pink, blue'console.log(str3.split('&'))
复制代码


  • toUpperCase() 转换大写


// 5、toUpperCase  转换大写var str4 = 'aaa'console.log(str4.toUpperCase()); // AAA
复制代码


  • toLowerCase() 转换小写


// 6、toLowerCase  转换小写var str5 = 'AAA'console.log(str5.toLowerCase()); // aaa
复制代码


综合代码:


// 字符串操作方法// 1、str.concat('') 拼接字符串,但是一般都用 + 号var str = 'andy'console.log(str.concat('red'))
// 2、substr('截取的起始位置', '截取几个字符')var str1 = '故事的小黄花'console.log(str1.substr(2, 2)) // 的小

// 3、替换字符 replace('被替换的字符', '替换为的字符')var str2 = 'andyandy'console.log(str2.replace('a', 'b')) // 只能替换第一个

// 4、字符串转换为数组 split('分隔符') 前面学过 join 把数组转换为字符串var str3 = 'red, pink, blue'console.log(str3.split('&'))
// 5、toUpperCase 转换大写var str4 = 'aaa'console.log(str4.toUpperCase()); // AAA
// 6、toLowerCase 转换小写var str5 = 'AAA'console.log(str5.toLowerCase()); // aaa
复制代码



注意:字符串所有的方法都是不可变的(不会改变值本身),操作完成会返回一个新的值


好了,今天的内容就聊完了。对于字符串和数组的操作往后的工作中运用的十分多,需要烂熟于心。有什么问题随时留言交流~

发布于: 6 小时前阅读数: 7
用户头像

还未添加个人签名 2019.09.04 加入

普及从学校到工作怎么快速转变,更高效学习前端知识及后续发展趋向,更好快速的融入到工作中 关注公号:前端史塔克

评论

发布
暂无评论
盘点JavaScript哪些常用的字符串对象