JS+ES6新增字符串方法大汇总,爆肝,共四十七种方法(求个赞,哈哈)

让我为大家介绍一下字符串的操作方法吧,你知道与不知道的大部分都在这!

分类可能有点不太对,还请大家见谅!

1.concat()

拼接字符串 可以连接两个或多个字符串

    let str = "hello"
    let str1 =" str"
    console.log("hello".concat(str1)) //hello str
    console.log(str.concat(str1)) //hello str

2.padStart(总长度,“填充的字符串”)

返回新的字符串,表示用参数字符串从头部(左侧)补全原字符串

    let str = "hello str"
    // 现在我们str的长度为9
    // 我们限定了总长度为10 我们在字符串最前面添加 一直添加到总长度为10
    // 如果未填充字符串 字符串不变
    console.log(str.padStart(10,"123")) //1hello str

3.padEnd(总长度,“填充的字符串”)

返回新的字符串,表示用参数字符串从尾部(右侧)补全原字符串

    let str = "hello str"
    // 现在我们str的长度为9
    // 我们限定了总长度为10 我们在字符串最后面添加 一直添加到总长度为10
    // 如果未填充字符串 字符串不变
    console.log(str.padEnd(10, "123")) //hello str1

—————————————————————————————————————

4.slice()

可以从字符串中截取指定的内容
不会影响原字符串
第一个参数,开始位置的索引(包括开始位置)
第二个参数,结束位置的索引(不包含结束位置)

    let str = "hello str"
    // 一个参数截取后面所有的字符串
    console.log(str.slice(6)) //str
    console.log(str.slice(0,5)) //hello
    // 也可以传递一个负数,负数将会从后面计算
    console.log(str.slice(0,-1)) //hello st

5.substr()

截取字符串 第一个参数:截取开始位置的索引,第二个参数:截取的长度

    let str = "hello str"
    console.log(str.substr(0,5))//hello
    console.log(str.substr(6,3))//str

6.substring()

字符串的截取 substring(开始的索引号[, 结束的索引号])

    let str = "hello str"
    // 当只有一个参数的时候 索引位置往后全部截取 包含索引位置
    console.log(str.substring(6)) //"str"
    // 当有两个参数的时候 开始索引的位置 结束索引的位置
    // 结束的索引不包含想要截取的部分
    // 记住包前不包后
    console.log(str.substring(6,7)) //"s"

7.trim()

清除字符串首尾的空格

    let str = " hello str "
    console.log(str.trim()) //"hello str"

8.trimEnd()

trimEnd() 方法从一个字符串的末端移除空白字符

    let str = "hello str    "
    console.log(str.length) //13
    console.log(str.trimEnd().length) // 9
    console.log(str.trimEnd()) // hello str

9.trimRight()

trimRight() 方法从一个字符串的末端移除空白字符

    let str = "hello str    "
    console.log(str.length) //13
    console.log(str.trimRight().length) // 9
    console.log(str.trimRight()) // hello str

10.trimLeft()

trimLeft() 方法从一个字符串的前端移除空白字符

    let str = "    hello str"
    console.log(str.length) //13
    console.log(str.trimLeft().length) // 9
    console.log(str.trimLeft()) // hello str

11.trimStart()

trimStart() 方法从一个字符串的前端移除空白字符

    let str = "    hello str"
    console.log(str.length) //13
    console.log(str.trimStart().length) // 9
    console.log(str.trimStart()) // hello str

——————————————————————————————————————————————————

12.split()

切割字符串转换为数组
切割后的字符串可以使用数组方法

    let str = "red,orange"
    console.log(str.split(",")) // ['red', 'orange']
    console.log(str.split("")) //['r', 'e', 'd', ',', 'o', 'r', 'a', 'n', 'g', 'e']

12.toLocaleLowerCase()

大写转小写

    let str = "HELLO STR"
    console.log(str.toLocaleLowerCase()) //hello str

13.toLocaleUpperCase()

小写转大写

    let str = "hello str"
    console.log(str.toLocaleUpperCase()) //HELLO STR

14.toLowerCase()

大写转小写

    let str = "HELLO STR"
    console.log(str.toLowerCase()) //hello str

16.toUpperCase()

小写转大写

    let str = "hello str"
    console.log(str.toUpperCase()) //HELLO STR

17.toString()

toString()的用法有许多,我介绍跟字符串相关的用法
可以转换数据类型为字符串型

    let arr = [1]
    let obj = {name:"zs"}
    let num = 1
    console.log(arr.toString()) // 1
    console.log(typeof arr.toString()) // string
    console.log(obj.toString()) // [object Object]
    console.log(typeof obj.toString()) // string
    console.log(num.toString()) // 1
    console.log(typeof obj.toString()) // string

18.replace()

可以将字符串中指定内容替换为新内容
第一个参数被替换的内容
第二个参数新的内容

    let str = "hello str"
    console.log(str.replace("hello","hh")) //hh str

19.replaceAll()

replaceAll() 方法用于在字符串中用一些字符替换另一些字符,或替换一个与正则表达式匹配的子串,该函数会替换所有匹配到的子字符串。

    let str = "hello str hello str"
    console.log(str.replaceAll("hello","hh")) //hh str hh str

20.repeat(number)

返回新的字符串,表示将字符串重复指定次数返回

    let str = "hello str"
    console.log(str.repeat(2)) //hello strhello str

——————————————————————————————————————————————————

21.length

用来获取字符串的长度

    let str = "hello str"
    console.log(str.length) //9

22.charAt()

str.charAt(index),index是字符所在字符串的位置索引,索引从0开始
如果超过位置索引,返回 “ ”

    let str = "hello str"
    console.log(str.charAt(0)) //h
    console.log(str.charAt(9)) //空

23.indexOf()

检索一个字符串中是否含有指定内容
如果字符串中含有该内容,则会返回其第一次出现的索引
有第二个参数 ,代表开始查找索引的位置
没找到指定的内容返回-1

    let str = "hello hello"
    console.log(str.indexOf("h")) //0
    console.log(str.indexOf("v")) //-1
    //有两个参数的时候 索引指定开始查找位置
    console.log(str.indexOf("e",0)) //1
    console.log(str.indexOf("h",1)) //-1

24.lastIndexOf()

检索一个字符串中是否含有指定内容
从后往前找
如果字符串中含有该内容,则会返回其最后一次出现的索引
有第二个参数 ,代表开始查找索引的位置
没找到指定的内容返回-1

    let str = "hello hello"
    console.log(str.lastIndexOf("h")) //6
    console.log(str.lastIndexOf("v")) //-1
    // 从下标为0的位置开始从后往前找
    console.log(str.lastIndexOf("h",0)) //0
    console.log(str.lastIndexOf("h",6)) //6

25.includes()

用于判断一个字符串是否包含在另一个字符串中,根据情况返回 true 或 false。

    let str = "hello str"
    console.log(str.includes("hello")) //true
    console.log(str.includes("str")) //true
    console.log(str.includes("helo")) //false
    //两个值时 第二个值是索引 如下例 从索引1后面再开始查找
    console.log(str.includes("hello",1)) //false
    console.log(str.includes("ello",1)) //true

26.charCodeAt()

返回指定索引位置字符的 Unicode 值

    let str = "hello str"
    console.log(str.charCodeAt(0)) //104

27.formCharCode()

可以根据字符编码去获取字符
需要通过String.fromCharCode() 去使用

    console.log(String.fromCharCode(20000)) // 北

28.search()

可以搜索字符串中是否含有指定内容
如果搜索到指定内容,则会返回第一次出现的索引,如果没用搜索到返回-1
也可以接收一个正则表达式作为参数,然后根据正则表达式去检索字符串

    let str = "hello str"
    console.log(str.search("hello")) //0
    console.log(str.search("str")) //6
    console.log(str.search("v")) //-1
    // 可以使用正则表达式
    let str1 = "aac abc acc"
    console.log(str1.search(/a[abc]c/)) //0

29.match()

可以根据正则表达式,从一个字符串中将符合条件的内容提取出来
默认情况下只会找到第一个符号要求的内容,找到停止检索
可以设置正则表达式全局匹配
返回一个数组

    let str = "1a2b3c"
    console.log(str.match(/[A-z]/)) 
    console.log(str.match(/[A-z]/g))

在这里插入图片描述

30.at()

at() 方法用于接收一个整数值并返回该索引对应的元素,允许正数和负数。负整数从数组中的最后一个元素开始倒数。
匹配给定索引的数组中的元素。如果找不到指定的索引,则返回 undefined。

    let str = "hello str"
    console.log(str.at(9)) // undefined
    console.log(str.at(0)) // h
    console.log(str.at(-1)) // r

31.startsWith()

返回布尔值,判断参数字符串是否在原字符串的头部

    let str = "hello str"
    // h在字符串的头部返回true
    console.log(str.startsWith("h"))//true
    // e不在头部返回false
    console.log(str.startsWith("e"))//false

32.endsWith()

返回布尔值,判断参数字符串是否在原字符串的尾部

    let str = "hello str"
    // r在字符串的尾部返回true
    console.log(str.endsWith("r")) // true
    // h不在字符串的尾部返回false
    console.log(str.endsWith("h")) // false

33.localeCompare()

用于比较两个字符串
如果第一个字符串大于第二个字符串返回1
如果第一个字符串等于第二个字符串返回0
如果第一个字符串小于第二个字符串返回-1

    console.log("a".localeCompare("b")) // -1
    console.log("a".localeCompare("a")) // 0
    console.log("b".localeCompare("a")) // 1

——————————————————————————————————————————————————

标签类型方法

34.sub()

该方法返回加了 sub 标签的字符串

    let str = "hello str"
    console.log(str.sub())

在这里插入图片描述

35.big()

该方法返回加了 big 标签的字符串

    let str = "hello str"
    console.log(str.big()) 

在这里插入图片描述

36.bold()

该方法返回加了 b 标签的字符串

    let str = "hello str"
    console.log(str.big()) 

在这里插入图片描述

37.anchor()

anchor() 方法用于创建 HTML 锚
该方法返回加了 a 标签的字符串

    let str = "hello str"
    console.log(str.anchor("url地址")) 

在这里插入图片描述

38.blink()

blink() 方法用于显示闪动的字符串
该方法返回加了 blink 标签的字符串

    let str = "hello str"
    console.log(str.blink())

在这里插入图片描述

39.fixed()

fixed() 方法用于把字符串显示为打字机字体。
该方法返回加了 tt 标签的字符串

    let str = "hello str"
    console.log(str.fixed())

在这里插入图片描述

40.small()

该方法返回加了 small 标签的字符串**

    let str = "hello str"
    console.log(str.small())

在这里插入图片描述

41.link()

该方法返回加了 a 标签的字符串

    let str = "hello str"
    console.log(str.link("url地址"))

在这里插入图片描述

42.strike()

该方法返回加了 strike 标签的字符串

    let str = "hello str"
    console.log(str.strike())

在这里插入图片描述

43.fontcolor()

fontcolor() 方法用于按照指定的颜色来显示字符串
该方法返回加了 font 标签的字符串

    let str = "hello str"
    console.log(str.fontcolor("red"))

在这里插入图片描述

44.fontsize()

fontsize() 方法用于按照指定的尺寸来显示字符串。
该方法返回加了 font 标签的字符串

    let str = "hello str"
    console.log(str.fontsize(12))

在这里插入图片描述

45.italics()

italics() 方法用于把字符串显示为斜体。
该方法返回加了 i 标签的字符串

    let str = "hello str"
    console.log(str.fontsize(12))

在这里插入图片描述
——————————————————————————————————————————————————

46.valueOf()

返回 String 对象的原始值:

    let str = "hello str"
    console.log(str.valueOf()) //hello str

47.模板字符串

ES6新增了模板字符串,让我们拼接字符串时更方便
注意:切记使用反引号作为字符串的定界符分隔的字面量
1.拼接
在我们模板字符串出现之前,我们想要拼接字符串是比较麻烦的

	const name = "杰克";
	const age = 18;
	// 以前的拼接字符串
	console.log("大家好,我的名字叫"+name+",我今年"+age+"岁")

现在我们有了模板字符串,拼接起来就会简单许多
模板字符串使用反引号 `` 作为字符串的定界符分隔的字面量

    const name = "杰克";
    const age = 18;
    // 模板字符串,切记使用反引号
    console.log(`大家好,我的名字叫${name},我今年${age}`)

2.换行
以前我们用双引号或者单引号编写字符串时,如果出现一行装不下的情况下,我们需要使用+号来拼接

    const name = "杰克";
    const age = 18;
    // 一行装不下我们需要用+来拼接
    console.log("大家好,我的名字叫杰克"
    +"今年18岁了")

现在我们有了模板字符串,就可以更简单的实现换行遇到的问题

    const name = "杰克";
    const age = 18;
    // 一行装不下我们需要用+来拼接
    console.log(`大家好,我的名字叫杰克
    今年18岁了`)

感谢大家的阅读,如有不对的地方,可以向我提出,感谢大家!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/138214.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Android图形系统之X11、Weston、Wayland、Mesa3D、SwiftShader介绍(十五)

简介: CSDN博客专家,专注Android/Linux系统,分享多mic语音方案、音视频、编解码等技术,与大家一起成长! 优质专栏:Audio工程师进阶系列【原创干货持续更新中……】🚀 人生格言: 人生…

乔新亮:打造世界级领导力,管理从示弱开始

导语 | 技术管理在企业发展中发挥着重要的作用,有效的技术管理能够帮助团队聚焦目标,提升团队协作效率,保障项目快速且高质量完成,实现业务价值。那么在当前数字化时代,技术管理者如何提升自身领导力,助力企…

让AI拥有人类的价值观,和让AI拥有人类智能同样重要

编者按:2023年是微软亚洲研究院建院25周年。25年来,微软亚洲研究院探索并实践了一种独特且有效的企业研究院的新模式,并以此为基础产出了诸多对微软公司和全球社会都有积极影响的创新成果。一直以来,微软亚洲研究院致力于创造具有…

“咸阳杯·美洲队中国行”国际足球邀请赛圆满举办

巴拿马1:0乌拉圭 “咸阳杯美洲队中国行”国际足球邀请赛圆满举办 11月12日下午3:00,由陕旅集团联合承办、陕体集团协办的“咸阳杯美洲队中国行”国际足球邀请赛在咸阳奥体中心开赛。两支美洲劲旅:巴拿马国家队与乌拉圭国青队龙争虎斗&#…

代码随想录算法训练营第五十天丨 动态规划part13

300.最长递增子序列 思路 首先通过本题大家要明确什么是子序列,“子序列是由数组派生而来的序列,删除(或不删除)数组中的元素而不改变其余元素的顺序”。 本题也是代码随想录中子序列问题的第一题,如果没接触过这种…

CURL报错:Could not resolve host

编辑:/etc/resolv.conf nameserver 223.5.5.5 nameserver 223.6.6.6 原因:https://blog.csdn.net/tongxin_tongmeng/article/details/131805072

centos7下载python3离线安装包

下载离线安装工具 yum install yum-utils -y下载python3离线安装包 yumdownloader --destdir/root/python3 --resolve python3将python3下面的离线安装文件拷贝到其他服务器上就可以安装 离线安装 先进入到离线程序rpm文件存储路径 # 离线安装 rpm -Uvh --force --nodep…

TCP连接出现大量CLOSE_WAIT不回收的问题排查

背景 日常运维过程中,收到“应用A”突然挂起没有处理请求的告警,然后触发“存活检查”不通过,自动重启了。 问题 为什么“应用A”突然挂起? 分析 排查过程很长,走了很多弯路,这里只列出本案例有效行动…

求求了 谁好人家还搞托运!!

求求了 谁好人家还搞托运!! 真相了 是我这个好人 转眼又是一年之冬 北方的朋友已经开始“南迁”了 或者在北方生长的宝子也会不习惯冬天吗? 你又是来自哪个城市呢? 所以过冬这件事情不容小觑 而中国唯一的热带气候省份-海南 就成了香饽饽 但有个问题令人犯愁 北方来到中国最南…

AlNiCo铝镍钴永磁材料

1970年代稀土永磁材料发明之前,AlNiCo铝镍钴合金一直是磁性能最强的永磁材料,不过由于成分中包含战略性金属钴和镍,导致成本较高,随着铁氧体永磁和稀土永磁的相继问世,铝镍钴材料在众多应用中逐步被取代。但在一些高温…

ROS机器人毕业论文数量井喷-数据日期23年11月13日

背景 ROS机器人论文数量在近3年井喷发展,仅硕士论文知网数据库可查阅就已经达到2264篇,实际相关从业者远远远大于这个数值。 按日期排序,每页20篇,23年还未结束,检索本身也不一定完备,就超过200。 相关从业…

家庭医生上门预约小程序源码系统 源码完全开源可二开 带完整搭建教程

大家好啊,今天源码小编来给大家介绍一款家庭医生上门预约小程序源码系统。现如今,医疗资源分布不均,许多患者特别是老年人和慢性病患者需要定期接受医疗服务。然而,由于各种原因,如医院距离远、行动不便、挂号难等&…

[SOC] MBIST (Memory Built-In Self Test) and Memory Built-in Self Repair (BISR)

存储器构成了 VLSI 电路的很大一部分。存储系统设计的目的 是存储大量数据。[1] 存储器不包括逻辑门和触发器。因此,需要不同的故障模型和测试算法来测试存储器。 MBIST 是一种自测试和修复机制,它通过一组有效的算法来测试存储器,以检测典型…

迅为龙芯2K1000开发板虚拟机ubuntu启动root用户

作为嵌入式开发人员,系统的所有权限都要为我们打开,所以我们不必像运维那样,对 root 用户非常敏感,所以安装完 ubuntu 系统以后,我们要启用 root 用户。 首先我们打开 ubuntu 控制终端,然后在终端里面输入…

C语言—数组入门

数组定义方式 int一个占4个字节,char一个占1个字节,double一个占8个字节,所以三个最后都是24. 数组不能被动态定义 下面代码是不可行的!!!访问数组中元素 下标索引从0开始 如果定义数组int a[10]&#…

AI在一定程度上能够使供应链变得不那么脆弱

供应链行业协会三菱重工今年进行的一项调查显示,供应链中的技能短缺是2000名供应链高管最关心的问题。联合包裹服务公司Ware2Go的供应链主管Kelton Kosik表示,在一系列全球贸易中断之后,对供应链人才——尤其是专注于技术领域的人才——的需求…

屏幕截图软件 Snagit mac中文版软件特点

Snagit mac是一款屏幕截图和视频录制软件,它可以帮助用户快速捕捉屏幕上的任何内容,并将其编辑、标注和共享。 Snagit mac软件特点 多种截图模式:支持全屏截图、窗口截图、区域截图、延时截图等多种截图模式,满足不同用户的需求。…

【KVM-4】硬件虚拟化技术(详)

前言 大家好,我是秋意零。 经过前面章节的介绍,已经知道KVM虚拟化必须依赖于硬件辅助的虚拟化技术,本节就来介绍一下硬件虚拟化技术。 👿 简介 🏠 个人主页: 秋意零🔥 账号:全平…

马达加斯加市场开发攻略,收藏一篇就够了

马达加斯加是位于非洲南部一个国家,虽然经济是比较落后的一个国家,但是一直以来跟中国的关系都还不错,生产生活资料也是比较依赖进口的,市场潜力还是不错的。今天就来给大家分享一下马达加斯加的相关攻略。大家点赞收藏关注慢慢看…

用 AI 速读海量文档!5款 AI 阅读工具推荐

在当今信息爆炸的时代,我们在手动搜集和处理信息时面临着几个挑战: 浩如烟海的信息量远远超出了我们的阅读能力。 信息的复杂性要求我们重复筛选和过滤。 专业或难以理解的内容需要被翻译成易懂的语言。 需要从线性的文本中提取出层次分明的结构和关联…