JavaScript 字符串(上)
JavaScript 字符串(上)
三种引号
字符串可以包含在单引号、双引号或反引号中
//用法
let single = 'Single quotation mark'; //单引号
let double = "Double quotation mark"; //双引号
let backquote = `backquote`; //反引号
- 单引号 与 双引号 基本相同。
- 反引号 允许我们通过 ${…} 将任何表达式嵌入到字符串中:
- 反引号 允许字符串换行:
//用法
//可以插入变量及表达式
var a = "Hello";
alert(`${a} World`); // Hello World
//可以换行
let row = `first line
Second line
Third line
`;
字符串特殊字符
所有的特殊字符都以反斜杠字符 \ 开始。它也被称为“转义字符”。
//用法
let string1 = "Hello\nWorld";
let string2 = "\u{20331}"; // 佫,罕见的中国象形文字(长 unicode)
| 代码 | 输出 |
|---|---|
| ' | 单引号 |
| " | 双引号 |
| & | 和号 |
| \ | 反斜杠 |
| \n | 换行符 |
| \r | 回车符 |
| \t | 制表符 |
| \b | 退格符 |
| \f | 换页符 |
| \xXX | 具有给定十六进制 Unicode XX 的 Unicode 字符,例如:'\x7A' 和 'z' 相同。 |
| \uXXXX | 以 UTF-16 编码的十六进制代码 XXXX 的 unicode 字符,例如 \u00A9 —— 是版权符号 的 unicode。它必须正好是 4 个十六进制数字。 |
| \u{X…XXXXXX}(1 到 6 个十六进制字符) | 具有给定 UTF-32 编码的 unicode 符号。一些罕见的字符用两个 unicode 符号编码,占用 4 个字节。这样我们就可以插入长代码了。 |
length
length 属性表示字符串长度
//用法
let string = 'Hello';
console.log(string.length);// 5
注意: str.length 是一个数字属性,而不是函数。后面不需要添加括号
charAt()与[]
要获取在 某个 位置的一个字符可以用 charAt() 或者 []
第一个字符从零位置开始:
//用法
let string = 'Hello';
string.charAt(0); //H
string.[0]; //H
string.charAt(10); //""
string.[10]; //undefined,
如果没有找到字符:
- [] 返回 undefined,
- charAt() 返回一个空字符串.
toLowerCase() 与 toUpperCase()
- toLowerCase() 方法可以将字符串英文全部变成小写字母:
- toUpperCase() 方法可以将字符串英文全部变成大写字母:
//用法
'Hello'.toLowerCase(); //hello
'Hello'.toUpperCase(); //HELLO
indexOf()
方法可返回某个指定的字符串值在字符串中首次出现的位置。如果没有找到,则返回 -1。
有两个参数
必选的第一个参数是你要查找的字符串
可选的第二个参数允许我们从给定的起始位置开始检索。
//用法
let string = 'Hello World';
string.indexOf('H') // 0
string.indexOf('H', 2) // -1
includes(),startsWith(),endsWith()
- includes():方法返回布尔值,表示是否找到了参数字符串。(第二个参数允许我们从给定的起始位置开始检索。)
- startsWith():方法返回布尔值,表示参数字符串是否在原字符串的头部。
- endsWith():方法返回布尔值,表示参数字符串是否在原字符串的尾部。
//用法
let string = 'Hello World';
string.includes('World') // true
string.includes('World',6) // false
string.startsWith('H') // true
string.endsWith('d') // true
slice(),substr(),substring()
都是截取字符串,三个方法都接收 两个参数
- slice() 方法第一个参数可为负数。第二个参数是指定截取长度。
- substr() 方法第一个参数为负数被替换成0。交换参数位置,小的在前。第二个参数是指定结束位置。
- substring() 方法第一个参数可为负数。第二个参数是指定结束位置。
//用法
var string = 'hello world';
string.slice(-3); //rld
string.sbstr(-3); //rld
string.substring(-3); //hello world
string.slice(3,-4); //lo w
string.substr(3,-4); //""
string.substring(3,-4); //hel
注意:substr()第二个参数指定的是截取的长度,slice()和substirng()第二个参数指定截取的结束位置。
| 方法 | 选择方式…… | 负值参数 |
|---|---|---|
| slice() | 从 第一个参数 到 第二个参数(不含 第二个参数) | 允许 |
| substring() | 第一个参数 与 第二个参数 之间(包括 第一个参数,但不包括 第二个参数 | 负值代表 0 |
| substr() | 从 第一个参数 开始获取长为 第二个参数 的字符串 | 允许 第一个参数 为负数 |
codePointAt() 与 String.fromCodePoint()
codePointAt() 方法返回在 参数 位置的字符代码 :
String.fromCodePoint() 方法通过 参数 创建字符
//用法
// 大小写字母意思不同
"z".codePointAt(0); // 122
"Z".codePointAt(0); // 90
String.fromCodePoint(90); // Z
注意:字符串的比较是按字母顺序逐字比较。所有的字符串都使用 UTF-16 编码。比较字母大小,是比较字母在编码中数字代码的大小
本文参考:
https://www.w3school.com.cn/
https://javascript.info/
JavaScript 字符串(上)的更多相关文章
- JavaScript 字符串(String) 对象
JavaScript 字符串(String) 对象 String 对象用于处理已有的字符块. JavaScript 字符串 一个字符串用于存储一系列字符就像 "John Doe". ...
- 常用的JavaScript字符串处理函数及用法
最近参加了几次前端实习生招聘的笔试,发现很多笔试题都会考到字符串的处理,比方说去哪儿网笔试题.淘宝的笔试题等,如果你经常参加笔试或者也是一个过来人,相信你也跟我一样,发现字符串的处理是前端招聘过程中最 ...
- JavaScript 字符串(String)对象
String 对象用于处理已有的字符块. JavaScript 字符串 一个字符串用于存储一系列字符就像 "John Doe". 一个字符串可以使用单引号或双引号: 实例 var ...
- javascript 字符串处理
---恢复内容开始--- 最近几次参加前端实习生招聘的笔试,发现很多笔试题都会考到字符串的处理,比方说去哪儿网笔试题.淘宝的笔试题等.如果你经常参加笔试或者也是一个过来人,相信你也跟我一样,发现字符串 ...
- javascript字符串方法总结
一.单引号字符串内部可以使用双引号,双引号字符串内部也可以使用单引号 "hello 'world'" 'welcome "to" js' 二.多行和转义 如果要 ...
- JavaScript字符串转数值
JavaScript字符串转数值:方法主要有三种 转换函数.强制类型转换.利用js变量弱类型转换. 1. 转换函数 js提供了parseInt()和parseFloat()两个转换函数.前者把值转换成 ...
- JavaScript 字符串实用常操纪要
JavaScript 字符串用于存储和处理文本.因此在编写 JS 代码之时她总如影随形,在你处理用户的输入数据的时候,在读取或设置 DOM 对象的属性时,在操作 Cookie 时,在转换各种不同 Da ...
- JavaScript 字符串操作
JavaScript 字符串用于存储和处理文本.因此在编写 JS 代码之时她总如影随形,在你处理用户的输入数据的时候,在读取或设置 DOM 对象的属性时,在操作 Cookie 时,在转换各种不同 Da ...
- 几款极好的 JavaScript 文件上传插件
文件上传功能作为网页重要的组成部分,几乎无处不在,从简单的单个文件上传到复杂的批量上传.拖放上传,需要开发者花费大量的时间和精力去处理,以期实现好用的上传功能.这篇文章向大家推荐几款很棒的 JavaS ...
随机推荐
- 关于int和Integer缓存(二):修改缓存大小
续上文: java中的基础数据类型长度是否取决于操作系统? 在一些语言中,数据类型的长度是和操作系统有关系的,比如c和c++: 但是在java中,java的基础类型长度都是固定的,都是4个字节.因为j ...
- React 性能调优记录(下篇),如何写高性能的代码
react性能非常重要,性能优化可以说是衡量一个react程序员水平的重要标准. 减少你的渲染 这个大家都明白,只要是父组件中用了子组件,子组件就算没用prop也会进行依次渲染, 可以用pureCom ...
- 多线程-synchorized
synchorized锁升级过程: synchorized锁升级过程中只能升级不能降级,起初是JDK早期(1.5之前),是重量级锁,是找操作系统申请OS锁.所谓重量级锁是说获取锁和释放锁都需要经过操作 ...
- 关闭 Scroll Lock
通常,在电子表格中选择一个单元格并按箭头键时,所选内容会在各个单元格之间上下左右移动,具体取决于您按的箭头键.但是,如果在 Scroll Lock 处于开启状态时按箭头键,则向上或向下滚动一行.或者, ...
- C# .NetCore简单实现无限递归的功能
1:在实际开发中,我们会经常使用到无限递归的情况,如菜单,父子级等的情况 2:Code 1 using System; 2 using System.Collections.Generic; 3 us ...
- QT如何发布应用程序和图标
1.程序图标 ①创建一个图标格式的文件,可以网上在线将普通的图形格式转成.ico 格式的图标文件 http://www.faviconico.org/ 这个网站可以在线转换png.jpg.gif文件为 ...
- 面试必备:排序算法汇总(c++实现)
排序算法主要考点: 7种排序 冒泡排序.选择排序.插入排序.shell排序.堆排序.快速排序.归并排序 以上排序算法是面试官经常会问到的算法,至于其他排序比如基数排序等等,这里不列举. 以下算法通过c ...
- Redis++:Redis 内存爆满 之 淘汰策略
前言: 我们的redis使用的是内存空间来存储数据的,但是内存空间毕竟有限,随着我们存储数据的不断增长,当超过了我们的内存大小时,即在redis中设置的缓存大小(maxmeory 4GB),redis ...
- MySQL(一)——入门
一.安装 二.配置环境变量 https://www.cnblogs.com/wzk153/category/1934516.html https://www.cnblogs.com/wzk153/ca ...
- Selenium系列(八) - 截取完整页面和截取指定元素并保存为图片
如果你还想从头学起Selenium,可以看看这个系列的文章哦! https://www.cnblogs.com/poloyy/category/1680176.html 其次,如果你不懂前端基础知识, ...