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 字符串(上)的更多相关文章

  1. JavaScript 字符串(String) 对象

    JavaScript 字符串(String) 对象 String 对象用于处理已有的字符块. JavaScript 字符串 一个字符串用于存储一系列字符就像 "John Doe". ...

  2. 常用的JavaScript字符串处理函数及用法

    最近参加了几次前端实习生招聘的笔试,发现很多笔试题都会考到字符串的处理,比方说去哪儿网笔试题.淘宝的笔试题等,如果你经常参加笔试或者也是一个过来人,相信你也跟我一样,发现字符串的处理是前端招聘过程中最 ...

  3. JavaScript 字符串(String)对象

    String 对象用于处理已有的字符块. JavaScript 字符串 一个字符串用于存储一系列字符就像 "John Doe". 一个字符串可以使用单引号或双引号: 实例 var ...

  4. javascript 字符串处理

    ---恢复内容开始--- 最近几次参加前端实习生招聘的笔试,发现很多笔试题都会考到字符串的处理,比方说去哪儿网笔试题.淘宝的笔试题等.如果你经常参加笔试或者也是一个过来人,相信你也跟我一样,发现字符串 ...

  5. javascript字符串方法总结

    一.单引号字符串内部可以使用双引号,双引号字符串内部也可以使用单引号 "hello 'world'" 'welcome "to" js' 二.多行和转义 如果要 ...

  6. JavaScript字符串转数值

    JavaScript字符串转数值:方法主要有三种 转换函数.强制类型转换.利用js变量弱类型转换. 1. 转换函数 js提供了parseInt()和parseFloat()两个转换函数.前者把值转换成 ...

  7. JavaScript 字符串实用常操纪要

    JavaScript 字符串用于存储和处理文本.因此在编写 JS 代码之时她总如影随形,在你处理用户的输入数据的时候,在读取或设置 DOM 对象的属性时,在操作 Cookie 时,在转换各种不同 Da ...

  8. JavaScript 字符串操作

    JavaScript 字符串用于存储和处理文本.因此在编写 JS 代码之时她总如影随形,在你处理用户的输入数据的时候,在读取或设置 DOM 对象的属性时,在操作 Cookie 时,在转换各种不同 Da ...

  9. 几款极好的 JavaScript 文件上传插件

    文件上传功能作为网页重要的组成部分,几乎无处不在,从简单的单个文件上传到复杂的批量上传.拖放上传,需要开发者花费大量的时间和精力去处理,以期实现好用的上传功能.这篇文章向大家推荐几款很棒的 JavaS ...

随机推荐

  1. 关于int和Integer缓存(二):修改缓存大小

    续上文: java中的基础数据类型长度是否取决于操作系统? 在一些语言中,数据类型的长度是和操作系统有关系的,比如c和c++: 但是在java中,java的基础类型长度都是固定的,都是4个字节.因为j ...

  2. React 性能调优记录(下篇),如何写高性能的代码

    react性能非常重要,性能优化可以说是衡量一个react程序员水平的重要标准. 减少你的渲染 这个大家都明白,只要是父组件中用了子组件,子组件就算没用prop也会进行依次渲染, 可以用pureCom ...

  3. 多线程-synchorized

    synchorized锁升级过程: synchorized锁升级过程中只能升级不能降级,起初是JDK早期(1.5之前),是重量级锁,是找操作系统申请OS锁.所谓重量级锁是说获取锁和释放锁都需要经过操作 ...

  4. 关闭 Scroll Lock

    通常,在电子表格中选择一个单元格并按箭头键时,所选内容会在各个单元格之间上下左右移动,具体取决于您按的箭头键.但是,如果在 Scroll Lock 处于开启状态时按箭头键,则向上或向下滚动一行.或者, ...

  5. C# .NetCore简单实现无限递归的功能

    1:在实际开发中,我们会经常使用到无限递归的情况,如菜单,父子级等的情况 2:Code 1 using System; 2 using System.Collections.Generic; 3 us ...

  6. QT如何发布应用程序和图标

    1.程序图标 ①创建一个图标格式的文件,可以网上在线将普通的图形格式转成.ico 格式的图标文件 http://www.faviconico.org/ 这个网站可以在线转换png.jpg.gif文件为 ...

  7. 面试必备:排序算法汇总(c++实现)

    排序算法主要考点: 7种排序 冒泡排序.选择排序.插入排序.shell排序.堆排序.快速排序.归并排序 以上排序算法是面试官经常会问到的算法,至于其他排序比如基数排序等等,这里不列举. 以下算法通过c ...

  8. Redis++:Redis 内存爆满 之 淘汰策略

    前言: 我们的redis使用的是内存空间来存储数据的,但是内存空间毕竟有限,随着我们存储数据的不断增长,当超过了我们的内存大小时,即在redis中设置的缓存大小(maxmeory 4GB),redis ...

  9. MySQL(一)——入门

    一.安装 二.配置环境变量 https://www.cnblogs.com/wzk153/category/1934516.html https://www.cnblogs.com/wzk153/ca ...

  10. Selenium系列(八) - 截取完整页面和截取指定元素并保存为图片

    如果你还想从头学起Selenium,可以看看这个系列的文章哦! https://www.cnblogs.com/poloyy/category/1680176.html 其次,如果你不懂前端基础知识, ...