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. 二级C语言题集

    时间:2015-5-13 18:01 在131题之后是按考点分类的题集,有需要的朋友可以看一下 ---------------------------------------------------- ...

  2. webpack4 插件ProvidePlugin使用遇到的问题

    根据博客https://www.cnblogs.com/geyouneihan/p/9769808.html学习webpack4中使用ProvidePlugin遇到了自定义js无法使用的问题,解决之后 ...

  3. freeswitch新增模块API

    概述 上一章我们讲解了freeswitch的源码基本结构,以及如何新增一个插件式模块. freeswitch的架构非常适合这种业务开发模式,即以freeswitch的基本功能为开发平台,新增插件式模块 ...

  4. Ajax的GET,POST方法传输数据和接收返回数据

    //首先创建一个Ajax对象 function ajaxFunction(){ var xmlHttp; try{ // Firefox, Opera 8.0+, Safari xmlHttp=new ...

  5. MySQL数据完整性约束

    主键约束 主键可以是表中的某一列,也可以是表中的多个列所构成的一个组合:其中,由多个列组合而成的主键也称为复合主键.在MySQL中,主键列必须遵守以下规则. (1)每一个表只能定义一个主键. (2)唯 ...

  6. Spring Security进阶

    Spring Security进阶 1.连接数据库进行数据的验证 Spring Security进行身份验证或者权限控制时,用户名和密码应该要和数据库的进行比较才行,用户的各种信息我们从数据库中去获取 ...

  7. SpringBoot2.x+mybatis plus3.x集成Activit7版本

    最近在写一个开源项目ruoyi-vue-pro,暂时负责Activiti7工作流的搭建,接这个任务一个原因,是比较好奇Activiti7版本与先前的5.6版本究竟有什么区别,因为先前在工作当中,最开始 ...

  8. 在同一台计算机中运行多个MySQL服务

    目录 一.问题的来源 二.配置 1. 修改原来MySQL系统的my.ini文件 2. 修改注册表 3. 重新启动服务 4. 最终效果 一.问题的来源 这个学期里我需要修读<数据库系统>的课 ...

  9. Pytest系列(12)- 测试结果生成HTML报告插件之pytest-html的详细使用

    如果你还想从头学起Pytest,可以看看这个系列的文章哦! https://www.cnblogs.com/poloyy/category/1690628.html 环境前提 Python3.6+ 安 ...

  10. 两种方式配置vue全局方法

    目录 1,前言 2,第一种方式 3,第二种方式 1,前言 在Vue项目开发中,肯定会有这样一个场景:在不同的组件页面用到同样的方法,比如格式化时间,文件下载,对象深拷贝,返回数据类型,复制文本等等.这 ...