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. FXGL游戏开发-JavaFX游戏框架

    FXGL 是一个JavaFX 游戏开发的框架,这个框架有两个版本,其中基于JDK1.8的版本已经不再维护,目前最新的是基于JDK11的版本,也就是Openjfx的版本. FXGL 提供了各种游戏范例: ...

  2. Flink中的Time与Window

    一.Time 在Flink的流式处理中,会涉及到时间的不同概念 Event Time(事件时间):是事件创建的时间.它通常由事件中的时间戳描述,例如采集的日志数据中,每一条日志都会记录自己的生成时间, ...

  3. C# ThreadPool 分批处理数据,所有数据执行完再返回

    这是一个调用翻译数据的功能,所有数据一次性提交会造成后台服务压力大,接口反应时间也长. 所以做了一个分批处理,等待所有批次的数据调用接口都返回后再执行下一步. 1 /// <summary> ...

  4. Salesforce LWC学习(三十六) Quick Action 支持选择 LWC了

    本篇参考: https://developer.salesforce.com/docs/component-library/documentation/en/lwc/lwc.use_quick_act ...

  5. MySQL——日志管理

    一.MySQL日志类型 1.错误:--log--error ---------------------*** host_name.err 2.常规: --general_log host_name.l ...

  6. Tars | 第4篇 Subset路由规则业务分析与源码探索

    目录 前言 1. Subset不是负载均衡 1.1 任务需求 1.2 负载均衡源码结构图 1.3 负载均衡四种调用器 1.4 新增两种负载均衡调用器 1.5 Subset应该是"过滤&quo ...

  7. Walker

      emmm.......随机化.   好吧,我们不熟.   考虑随机选取两组数据高斯消元消除结果后带入检验,能有超过1/2正确就输出.   其实方程就四个,手动解都没问题.   只是要注意看sin与 ...

  8. 最详尽的 JS 原型与原型链终极详解(1)(2)(3)===转载

    转载===方便以后复习 原文网址:https://www.jianshu.com/p/dee9f8b14771 一. 普通对象与函数对象 JavaScript 中,万物皆对象!但对象也是有区别的.分为 ...

  9. web服务器之Ser-U和NFS

    1. Ser-U加载页面目录/文件列表 2. Ser-U下载文件 3. NFS服务器加载目录/文件列表 4. NFS服务器下载文件 4. 对比分析 Ser-U服务器在传输服务器端的目录时,使用的为xm ...

  10. 基于Ubuntu18.04一站式部署(python-mysql-redis-nginx)

    基于Ubuntu18.04一站式部署 Python3.6.8的安装 1. 安装依赖 ~$ sudo apt install openssl* zlib* 2. 安装python3.6.8(个人建议从官 ...