javascript中字符串处理常用的方法汇总

 更新时间:2024年03月08日 09:42:25   作者:景天科技苑  
JavaScript中操作字符串是一个很重要的话题,下面这篇文章主要给大家介绍了关于javascript中字符串处理常用的方法,文中通过图文以及代码示例介绍的非常详细,需要的朋友可以参考下

前言

虽然 JavaScript 有很多用处,但是处理字符串是其中最流行的一个。下面让我们深入地分析一下使用 JavaScript 操作字符串。

在 JavaScript 中, String 是对象。 String 对象并不是以字符数组的方式存储的,所以我们必须使用内建函数来操纵它们的值。这些内建函数提供了不同的方法来访问字符串变量的内容。下面我们详细看一下这些函数。

操作字符串的值是一般的开发人员必须面临的家常便饭。操作字符串的具体方式有很多,比如说从一个字符串是提取出一部分内容来,或者确定一个字符串是否包含一个特定的字符。

下面景天就 JavaScript 字符串处理相关函数做深入讲述:

1.获取字符串长度 length

var string = "to be or not to be";
      
var res = string.length
var res = string[-1]
console.log(res)

2.通过索引获取元素 charAt 不支持负下标 第几个位置的字符

var string = "to be or not to be";
var res = string.charAt(3)
console.log(res)

也可以直接通过string[3]下标获取

3.charCodeAt() 拿到字符串对应字母的ASCII的编码

如果字符串中是中文,拿到的是Unicode码

字符串进行加密的时候,中文不太好加密,我们可以通过Unicode码进行数学运算,进行加密
通过String.fromCharCode(20013) 还原成中文

4.清除两侧的空白 trim()

var res = string.trim()
console.log(string)
console.log(res)

5.获取首次出现的位置 indexOf

 /*找不到返回-1*/
var string = "to be or not to be";
var res = string.indexOf("z")
console.log(res)

找不到返回-1

找到,返回索引下标

6.最后一次出现的位置 lastIndexOf

/*找不到返回-1*/
var res = string.lastIndexOf("zzz")
console.log(res);

找到第一个字母最后出现的下标

7.连接字符串concat

var res = string.concat("d:\\","python32\\","day42");
console.log(res);

8.截取字符串 slice 只能正向截取。没有步长。加上也不报错

/* string.slice(开始值,结束值) 字符串的切片  留头舍尾  [支持逆向下标]*/
var string = "11122233e or not to be";
var res = string.slice(1,7);
var res = string.slice(-5,-1);      // to b
// var res = string.slice(-5,-10); //截取不到返回空
console.log(res,"<==1==>")

截取,取头舍尾,只能正向截取,逆向截取,获取不到

不支持逆向截取

9.截取字符串 substr

/* string.substr(开始值,截取几个) */
var string = "11122233e or not to be";
var res = string.substr(3,4)
console.log(res,"<==2==>")

substring是从中截取一段字符串,在组成一个新的字符串

截取方式:顾头不顾尾

str.substring(indexA, indexB)

以下标从零开始计数;包含indexA,不包含indexB

如果inde新A与indexB相等,则返回一个空字符串

其中字符串中的空格也算是一个字符串。

当有一个参数时

str.substring(indexA)

当有一个参数时,就是从indexA往后所有的字符

如果第二参数是负数,则从零开始计数 如果任一参数小于0或是NaN,它将被视为0。 如果indexStart大于indexEnd,那么效果和被交换一样

str.substring(indexA, indexB)

includes()

ES6中引入的JavaScript include()方法确定字符串是否包含您传递给该方法的字符。如果字符串包含某些字符,则该方法将返回“ true”。

如果指定的字符串不包含您要查找的字符,则includes()将返回“ false”。

10.拆分字符串 split

var string = "11122233e or not to be";
var res = string.split(" ")
console.log(res,"<==3==>")

返回数组

11.大小写 toUpperCase toLowerCase

var string = "11122233e Or noT tO be";
res = string.toUpperCase();
res = string.toLowerCase();
console.log(res,"<==4==>")

转换成大写

12.search 匹配第一次找到的索引位置,找不到返回-1 匹配字符串要带上双斜线

var string = "aaabbb oldaoy ccc"
var res = string.search(/oldboy/)
console.log(res,"<==5==>")

返回第一个字母出现的下标

13.match 返回匹配的数据

/* /正则表达式/修饰符 g:全局匹配 i:不区分大小写 m:多行匹配  */
var string = "我的电话是 : 13838384388 你的电话是: 13854381438"
var res = string.match(/\d{11}/);  // 匹配一个
var res = string.match(/\d{11}/g); // 匹配多个,(需要修饰符加上g)
console.log(res)
console.log(res[0])
console.log(res[1])

返回的是数组。不加g匹配第一个后,就不再匹配。res[1]没匹配到,打印出undefined

加上g后,全量匹配,都可以匹配到

14.字符串替换 replace

/* replace默认只替换一次 */
var string = "to be or not to be";
var res = string.replace("to","two")
console.log(res,"<==6==>")    

默认只替换一次,替换第一个

替换所有的方法

方法一:

function myreplace(string,a,b){
    /*
        找最后一个to,如果找不到返回-1
        如果能找到就不停的进行替换,直到-1为止,循环终止;
    */
    while(string.lastIndexOf(a) != -1){
        console.log(1)
        string = string.replace(a,b);
    }
    return string;
}     
var string = "to be or not to be";   
var res = myreplace(string,"to","two")
console.log(res) // two be or not two be

循环替换完成,1前面的2表示循环跑了2次

方法二,在要被替换的字符串后面加g,表示全量替换

var string = "to be or not to be";
var res = string.replace(/to/g,"two");
console.log(res)

总结

到此这篇关于javascript中字符串处理的文章就介绍到这了,更多相关js字符串处理方法内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • 深入了解Javascript的事件循环机制

    深入了解Javascript的事件循环机制

    单线程的同步等待极大影响效率,任务不得不一个一个等待执行,对于网页应用是无法接受的。所以Javascript使用事件循环机制来解决异步任务的问题。本文就来讲讲Javascript的事件循环机制,希望对你有所帮助
    2022-09-09
  • javascript函数特点实例分析

    javascript函数特点实例分析

    这篇文章主要介绍了javascript函数特点,实例分析了javascript函数传递参数及调用方法,需要的朋友可以参考下
    2015-05-05
  • JS使用window.requestAnimationFrame()对列表切片进行渲染

    JS使用window.requestAnimationFrame()对列表切片进行渲染

    这篇文章主要为大家介绍了JS使用requestAnimationFrame对列表切片进行渲染,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-05-05
  • Object.keys方法实例详解

    Object.keys方法实例详解

    这篇文章主要介绍了Object.keys方法实例详解,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2023-09-09
  • 原生js实现省市区三级联动代码分享

    原生js实现省市区三级联动代码分享

    这篇文章主要介绍了原生js实现省市区三级联动功能以及代码分享,对此有需要的朋友可以参考学习下。
    2018-02-02
  • javascript如何判断输入的url是否正确

    javascript如何判断输入的url是否正确

    这篇文章主要介绍了javascript如何判断输入的url是否正确,需要的朋友可以参考下
    2014-04-04
  • js代码编写无缝轮播图

    js代码编写无缝轮播图

    这篇文章主要为大家详细介绍了js代码编写无缝轮播图,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2020-09-09
  • 详解webpack2异步加载套路

    详解webpack2异步加载套路

    这篇文章主要介绍了详解webpack2异步加载套路,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-09-09
  • javascript中创建对象的三种常用方法

    javascript中创建对象的三种常用方法

    在javascript中创建对象的三种方法,脚本之家以前发布过有简单实例版的,大家可以参考下。
    2010-12-12
  • JavaScript操作 url 中 search 部分方法函数

    JavaScript操作 url 中 search 部分方法函数

    这篇文章主要介绍了JavaScript操作 url 中 search 部分方法函数的相关资料,非常不错具有参考借鉴价值,需要的朋友可以参考下
    2016-06-06

最新评论