深入探究 JavaScript 中的 String:常用方法和属性全解析(中)

在这里插入图片描述

🤍 前端开发工程师(主业)、技术博主(副业)、已过CET6
🍨 阿珊和她的猫_CSDN个人主页
🕠 牛客高级专题作者、在牛客打造高质量专栏《前端面试必备》
🍚 蓝桥云课签约作者、已在蓝桥云课上架的前后端实战课程《Vue.js 和 Egg.js 开发企业级健康管理项目》、《带你从入门到实战全面掌握 uni-app》

文章目录

  • 三、`String`的常用方法
    • `length`属性:获取字符串的长度
    • `charAt()`方法:获取字符串中指定位置的字符
    • `concat()`方法:连接两个或多个字符串
    • `indexOf()`和`lastIndexOf()`方法:查找字符串中字符或子字符串的位置
    • `substring()`方法:提取字符串的子字符串
    • `toLowerCase()`和`toUpperCase()`方法:将字符串转换为小写或大写
    • `trim()`方法:去除字符串两侧的空格
    • `replace()`方法:替换字符串中的特定子字符串

三、String的常用方法

length属性:获取字符串的长度

length 属性是 String 对象的一个属性,用于获取字符串的长度。它是通过在字符串前加上方括号 [] 来访问的,例如:

let str = "Hello, world!";
console.log(str.length); // 输出 13

在这个例子中,我们使用 length 属性获取了字符串 str 的长度,并将其输出到控制台。

length 属性返回的字符串长度不包括空格和换行符,只包括字符。例如:

let str = "Hello, world!";
console.log(str.length); // 输出 13

在这个例子中,字符串 str 的长度是 13,因为它包含了 12 个字符和 1 个空格。

需要注意的是,length 属性返回的字符串长度是整数,即它总是返回一个整数,即使字符串中包含小数。

charAt()方法:获取字符串中指定位置的字符

charAt() 方法是 String 对象的一个方法,用于获取字符串中指定位置的字符。它是通过在字符串前加上方括号 [] 和一个数字来访问的,例如:

let str = "Hello, world!";
console.log(str.charAt(0)); // 输出 'H'
console.log(str.charAt(7)); // 输出 'w'
console.log(str.charAt(12)); // 输出 '!'

在这个例子中,我们使用 charAt() 方法获取了字符串 str 中指定位置的字符,并将其输出到控制台。

charAt() 方法的参数是一个数字,表示字符串中字符的位置。这个数字从 0 开始,表示第一个字符的位置。例如,charAt(0) 返回字符串中的第一个字符,charAt(1) 返回字符串中的第二个字符,以此类推。

需要注意的是,如果 charAt() 方法的参数超出了字符串的长度,那么它会返回 undefined。例如:

let str = "Hello, world!";
console.log(str.charAt(13)); // 输出 undefined

在这个例子中,我们尝试使用 charAt() 方法获取字符串 str 中位置为 13 的字符,但是由于字符串的长度只有 13,所以我们得到了 undefined

concat()方法:连接两个或多个字符串

concat() 方法是 String 对象的一个方法,用于连接两个或多个字符串。它是通过在字符串前加上方括号 [] 和一个或多个字符串来访问的,例如:

let str1 = "Hello";
let str2 = "world!";
let str3 = str1.concat(str2);
console.log(str3); // 输出 "Helloworld!"

在这个例子中,我们使用 concat() 方法将两个字符串 str1str2 连接在一起,并将其输出到控制台。

concat() 方法的参数可以是一个或多个字符串,它将这些字符串连接在一起,形成一个新的字符串。例如:

let str1 = "Hello";
let str2 = "world";
let str3 = str1.concat(" ", str2);
console.log(str3); // 输出 "Hello world"

在这个例子中,我们使用 concat() 方法将两个字符串 str1str2 以及一个空格连接在一起,并将其输出到控制台。

需要注意的是,concat() 方法返回一个新的字符串,而不是在原字符串上进行修改。例如:

let str = "Hello";
let str2 = "world";
str = str.concat(str2);
console.log(str); // 输出 "world"
console.log(str2); // 输出 "world"

在这个例子中,我们使用 concat() 方法将两个字符串 strstr2 连接在一起,并将结果赋给原字符串 str。但是,输出结果是 str2,而不是 str,因为 concat() 方法返回的是一个新的字符串。

indexOf()lastIndexOf()方法:查找字符串中字符或子字符串的位置

indexOf()lastIndexOf() 方法是 String 对象的两个方法,用于查找字符串中指定字符或子字符串的位置。它们在字符串中查找指定的字符或子字符串,并返回该字符或子字符串在字符串中首次出现的位置的索引,或者最后一次出现的位置的索引,取决于调用哪个方法。

以下是这两个方法的语法:

str.indexOf(searchElement[, fromIndex])
str.lastIndexOf(searchElement[, fromIndex])

其中,searchElement 是要查找的字符或子字符串,fromIndex 是可选参数,表示从哪个位置开始查找。

下面是这两个方法的详细说明:

  1. indexOf() 方法:
    • indexOf() 方法用于查找字符串中指定字符或子字符串首次出现的位置的索引。
    • 如果未找到该字符或子字符串,则返回 -1。
    • 如果指定 fromIndex 参数,则从该索引开始查找。如果该索引大于或等于字符串的长度,则返回 -1。
  2. lastIndexOf() 方法:
    • lastIndexOf() 方法用于查找字符串中指定字符或子字符串最后一次出现的位置的索引。
    • 如果未找到该字符或子字符串,则返回 -1。
    • 如果指定 fromIndex 参数,则从该索引开始查找。如果该索引大于或等于字符串的长度,则返回 -1。

下面是一些示例:

let str = "Hello, world!";// 查找子字符串 "world"
let index = str.indexOf("world");
console.log(index); // 输出 7let index2 = str.indexOf("world", 6);
console.log(index2); // 输出 7let index3 = str.indexOf("world", 8);
console.log(index3); // 输出 -1// 查找字符 "w"
let index = str.indexOf("w");
console.log(index); // 输出 1let index2 = str.indexOf("w", 2);
console.log(index2); // 输出 1let index3 = str.indexOf("w", 3);
console.log(index3); // 输出 -1

在这个例子中,我们使用 indexOf() 方法查找字符串 str 中子字符串 “world” 的首次出现位置,并将其输出到控制台。我们还尝试使用 indexOf() 方法从索引 6 开始查找子字符串 “world”,并将其输出到控制台。我们还尝试使用 indexOf() 方法从索引 8 开始查找子字符串 “world”,但是未找到,所以输出 -1。我们还使用 indexOf() 方法查找字符串 str 中字符 “w” 的首次出现位置,并将其输出到控制台。我们还尝试使用 indexOf() 方法从索引 2 开始查找字符 “w”,并将其输出到控制台。我们还尝试使用 indexOf() 方法从索引 3 开始查找字符 “w”,但是未找到,所以输出 -1。

substring()方法:提取字符串的子字符串

substring() 方法是 String 对象的一个方法,用于提取字符串的子字符串。它是通过在字符串前加上方括号 [] 和两个数字来访问的,例如:

let str = "Hello, world!";
let subStr = str.substring(0, 5);
console.log(subStr); // 输出 "Hello"

在这个例子中,我们使用 substring() 方法从字符串 str 中提取从索引 0 开始到索引 5(不包括索引 5)之间的子字符串,并将其输出到控制台。

substring() 方法的第一个参数是子字符串的起始索引,第二个参数是子字符串的结束索引。这两个索引都是可选的,如果省略,则默认为字符串的起始和结束索引。例如:

let str = "Hello, world!";// 从索引 0 开始到字符串的结束索引
let subStr1 = str.substring(0);
console.log(subStr1); // 输出 "Hello, world!"// 从字符串的起始索引到索引 5(不包括索引 5)
let subStr2 = str.substring(7);
console.log(subStr2); // 输出 "world!"

在这个例子中,我们使用 substring() 方法从字符串 str 中提取从索引 0 开始到字符串结束的子字符串,并将其输出到控制台。我们还使用 substring() 方法从索引 7 开始到索引 5(不包括索引 5)之间的子字符串,并将其输出到控制台。

需要注意的是,substring() 方法返回的是一个子字符串的引用,而不是一个新字符串。例如:

let str = "Hello, world!";
let subStr = str.substring(0, 5);
str = str.substring(0, 5);
console.log(str); // 输出 "Hello"
console.log(subStr); // 输出 "Hello"

在这个例子中,我们使用 substring() 方法从字符串 str 中提取从索引 0 开始到索引 5(不包括索引 5)之间的子字符串,并将其赋给变量 subStr。然后,我们将变量 str 的起始索引和结束索引都设置为 0 和 5,这意味着我们实际上是在修改 str 变量本身,而不是创建一个新的子字符串。所以,输出结果是相同的。

toLowerCase()toUpperCase()方法:将字符串转换为小写或大写

toLowerCase()toUpperCase() 方法是 String 对象的两个方法,用于将字符串转换为小写或大写。

以下是这两个方法的语法:

str.toLowerCase()
str.toUpperCase()

其中,str 是需要转换的字符串。

下面是这两个方法的详细说明:

  1. toLowerCase() 方法:
    • toLowerCase() 方法将字符串中的所有字符转换为小写形式。
    • 如果字符串已经是最小写形式,则不会进行任何更改。
  2. toUpperCase() 方法:
    • toUpperCase() 方法将字符串中的所有字符转换为大写形式。
    • 如果字符串已经是最大写形式,则不会进行任何更改。

下面是一些示例:

let str = "Hello, World!";
let lowerStr = str.toLowerCase();
console.log(lowerStr); // 输出 "hello, world!"let upperStr = str.toUpperCase();
console.log(upperStr); // 输出 "HELLO, WORLD!"

在这个例子中,我们使用 toLowerCase() 方法将字符串 str 转换为小写形式,并将其输出到控制台。我们还使用 toUpperCase() 方法将字符串 str 转换为大写形式,并将其输出到控制台。

需要注意的是,toLowerCase()toUpperCase() 方法返回的是一个新字符串,而不是在原字符串上进行修改。例如:

let str = "Hello, World!";
let lowerStr = str.toLowerCase();
str = lowerStr;
console.log(str); // 输出 "hello, world!"
console.log(lowerStr); // 输出 "hello, world!"

在这个例子中,我们使用 toLowerCase() 方法将字符串 str 转换为小写形式,并将其赋给变量 lowerStr。然后,我们将变量 str 设置为 lowerStr,这意味着我们实际上是在修改 str 变量本身,而不是创建一个新的字符串。所以,输出结果是相同的。

trim()方法:去除字符串两侧的空格

trim() 方法是 String 对象的一个方法,用于去除字符串两侧的空格。它是通过在字符串前加上方括号 [] 来访问的,例如:

let str = "  Hello, World!  ";
let trimStr = str.trim();
console.log(trimStr); // 输出 "Hello, World!"

在这个例子中,我们使用 trim() 方法去除字符串 str 两侧的空格,并将其输出到控制台。

trim() 方法的语法很简单,只有一个参数,即需要去除空格的字符串。它返回一个新的字符串,其中两侧的空格已被删除。

需要注意的是,trim() 方法不会删除字符串中间的空格,只会删除字符串两侧的空格。例如:

let str = "  Hello, World!  ";
let trimStr = str.trim();
console.log(trimStr); // 输出 "Hello, World!"
console.log(str); // 输出 "  Hello, World!  "

在这个例子中,我们使用 trim() 方法去除字符串 str 两侧的空格,并将其输出到控制台。然后,我们将原始字符串 str 输出到控制台,可以看到它仍然是原样。

replace()方法:替换字符串中的特定子字符串

replace() 方法是 String 对象的一个方法,用于替换字符串中的特定子字符串。它是通过在字符串前加上方括号 [] 和两个参数来访问的,例如:

let str = "Hello, World!";
let newStr = str.replace("World", "Universe");
console.log(newStr); // 输出 "Hello, Universe!"

在这个例子中,我们使用 replace() 方法将字符串 str 中的 “World” 子字符串替换为 “Universe”,并将其输出到控制台。

replace() 方法的第一个参数是要被替换的子字符串,第二个参数是要替换为的新子字符串。这两个参数都是可选的,如果省略,则默认为空字符串。例如:

let str = "Hello, World!";
let newStr = str.replace("World", "Universe");
console.log(newStr); // 输出 "Hello, Universe!"let newStr2 = str.replace("World", "Universe", 1);
console.log(newStr2); // 输出 "Hello, Universe!"

在这个例子中,我们使用 replace() 方法将字符串 str 中的 “World” 子字符串替换为 “Universe”,并将其输出到控制台。我们还使用 replace() 方法将字符串 str 中的 “World” 子字符串替换为 “Universe”,并限制替换次数为 1,因此只替换了第一次出现的 “World”。

需要注意的是,replace() 方法返回一个新的字符串,而不是在原字符串上进行修改。例如:

let str = "Hello, World!";
let newStr = str.replace("World", "Universe");
str = newStr;
console.log(str); // 输出 "Hello, Universe!"
console.log(newStr); // 输出 "Hello, Universe!"

在这个例子中,我们使用 replace() 方法将字符串 str 中的 “World” 子字符串替换为 “Universe”,并将其赋给变量 newStr。然后,我们将变量 str 设置为 newStr,这意味着我们实际上是在修改 str 变量本身,而不是创建一个新的字符串。所以,输出结果是相同的。

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

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

pyspark 笔记:窗口函数window

窗口函数相关的概念和基本规范可以见:pyspark笔记:over-CSDN博客 1 创建Pyspark dataFrame from pyspark.sql.window import Window import pyspark.sql.functions as F employee_salary [("Ali", "Sales", 8000),("Bob&qu…

springcloud Client端cloud-consumer-order80

文章目录 简介建立module修改pom修改yml主启动类把公共代码写在一个mudule 里面测试 简介 这个是和之前的8001相互配合端口测试 这里的80的用户测试端口。 代码在:GitHub 上:https://github.com/13thm/study_springcloud/tree/main/days2 建立module …

SpringBoot + 自定义注解 + AOP 打造通用开关

前言 最近在工作中迁移代码的时候发现了以前自己写的一个通用开关实现,发现挺不错,特地拿出来分享给大家。 为了有良好的演示效果,我特地重新建了一个项目,把核心代码提炼出来加上了更多注释说明,希望xdm喜欢。 案例 …

C#,字符串匹配(模式搜索)Sunday算法的源代码

Sunday算法是Daniel M.Sunday于1990年提出的一种字符串模式匹配算法。 核心思想:在匹配过程中,模式串并不被要求一定要按从左向右进行比较还是从右向左进行比较,它在发现不匹配时,算法能跳过尽可能多的字符以进行下一步的匹配&…

【BERT】详解

BERT 简介 BERT 是谷歌在 2018 年时提出的一种基于 Transformer 的双向编码器的表示学习模型,它在多个 NLP 任务上刷新了记录。它利用了大量的无标注文本进行预训练,预训练任务有掩码语言模型和下一句预测,掩码语言模型指的是随机地替换文本中…

Lucas求大组合数C(n,m)%p

将大组合数C&#xff08;n,m&#xff09;%p分解为小组合数C&#xff08;n,m&#xff09;%p乘积的模&#xff0c;n<10^18,m<10^18。 其中求解小组合数可以根据定义式计算&#xff08;质因子分解&#xff09;&#xff0c;也可以通过定义式的变形计算&#xff08;逆元&…

边缘计算AI智能分析网关V4客流统计算法的概述

客流量统计AI算法是一种基于人工智能技术的数据分析方法&#xff0c;通过机器学习、深度学习等算法&#xff0c;实现对客流量的实时监测和统计。该算法主要基于机器学习和计算机视觉技术&#xff0c;其基本流程包括图像采集、图像预处理、目标检测、目标跟踪和客流量统计等步骤…

Cinder组件作用

1、Cinder下发的流程 &#xff08;1&#xff09;Cinder-api接受上层发送的创建请求&#xff0c;然后把请求下发给Cinder-scheduler调度服务 &#xff08;2&#xff09;Cinder-scheduler调度服务&#xff0c;计算出哪个主机更适合创建&#xff0c;计算出来之后再把请求下发到Ci…

HarmonyOS 转场动画 ForEach控制

本文 我们继续说组件的专场特效 上文 HarmonyOS 转场动画 我们通过if控制了转场效果 本文 我们通过 ForEach 控制它的加载和删除 这时候就有人会好奇 ForEach 怎么控制删除呢&#xff1f; 很简单 循环次数不同 例如 第一次 10个 第二次 5个 那么后面的五个就相当于删除啦 我们…

C#winform上位机开发学习笔记2-串口助手的中文支持功能添加

分为两步&#xff1a; 1.串口接收支持中文显示 1.1.在软件初始化时写入此代码以支持汉字显示 //串口接收支持中文显示serialPort1.Encoding Encoding.GetEncoding("GB2312"); //串口1的解码支持GB2312汉字 2.串口发送支持中文输出 //支持中文输出Encoding Chine…

使用人工智能助手 Github Copilot 进行编程 01

本章涵盖了 AI 助⼿如何改变新程序员的学习⽅式为什么编程永远不会再⼀样了AI 助⼿如 Copilot 的⼯作原理Copilot 如何解决⼊⻔级编程问题AI 辅助编程的潜在危险 在本章中&#xff0c;我们将讨论人类如何与计算机进行交流。我们将向您介绍您的 AI 助手 GitHub Copilot&#x…

WordPress后台底部版权信息“感谢使用 WordPress 进行创作”和版本号怎么修改或删除?

不知道各位WordPress站长在后台操作时&#xff0c;是否有注意到每一个页面底部左侧都有一个“感谢使用 WordPress 进行创作。”&#xff0c;其中WordPress还是带有nofollow标签的链接&#xff1b;而页面底部右侧都有一个WordPress版本号&#xff0c;如下图中的“6.4.2 版本”。…