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. Spring Boot +Vue 项目实战笔记(二):前后端结合测试(登录页面开发)

    前言:关于开发环境 每位 Coder 都有自己偏好的开发工具,从大的方面划分主要有文本编辑器流和 IDE 流两种,我有一段时间也喜欢用编辑器(Sublime Text.Vim),但对我来说开发效率确实 ...

  2. js调试之firbug

    说下几种方法吧: 1.用alert 这个最最直观 把你想要的内容弹出来给你看,但是要看哪里 就要在哪里加,比较麻烦 2.用firefox 或者chrome浏览器 里面有debug工具的 3.如果想用i ...

  3. AndroidJetpack数据处理之数据库Room和懒加载Paging

    数据库工具:Room Room结构 导入依赖 app的build.gradle中开启kapt: apply plugin: 'kotlin-kapt' 并导入以下依赖: def room_versio ...

  4. Servlet过滤器----Filter

    JavaEE的Servlet规范描述了三种技术:Servlet,Filter,Listener (一)过滤器简介 Filter也称之为过滤器,它是Servlet技术中最实用的技术,WEB开发人员通过F ...

  5. Nginx反向代理之巨坑underscores_in_headers

    一.背景 因为项目需求,在做Windows的相关的事情:基本架构就是Nginx--> Nginx --> IIS,在Linux机器上通过Nginx做反向代理到Windows的IIS:然后遇 ...

  6. Jenkins 使用PowerShell插件部署Net5项目

    Jenkins安装 PowerShell plugin 插件 新建自由项目 拖到 构建 处,添加 PowerShell 构建 贴入下方脚本即可 # 变量 $ProjectPath = "E: ...

  7. 致敬mentohust,路由器使用Socket认证华科校园网

    致敬mentohust,路由器使用Socket认证华科校园网 前言: 上一篇文章中,为了解决ESP32华科无线网认证的问题,我成功把网页认证机制用Python+Socket复现.但痛点依然存在,无线网 ...

  8. Java并发编程工具类 CountDownLatch CyclicBarrier Semaphore使用Demo

    Java并发编程工具类 CountDownLatch CyclicBarrier Semaphore使用Demo CountDownLatch countDownLatch这个类使一个线程等待其他线程 ...

  9. python 回归分析

    一.线性回归 1 绘制散点图 import matplotlib.pyplot as plt x = [5,7,8,7,2,17,2,9,4,11,12,9,6] y = [99,86,87,88,1 ...

  10. Windows下安装Apollo时的几个常见问题

    今天在本地安装Apollo时遇到几个问题,觉得还是记录下来,希望能给有需要的朋友提供帮助. 安装的过程参考这篇教程,https://www.jianshu.com/p/6cf4b15ba82f.流程基 ...