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 ...
随机推荐
- docker安装与配置nginx详细过程
注:大鸟飞过,此方式只用于快速搭建使用 第一步 pull nginx 命令:docker pull nginx 第二步 启动nginx 命令:docker run --name nginx -p 80 ...
- Go并发控制--Channel篇
目录 1. 前言 2. 使用channel控制子协程 2.1 使用场景 2.2 总结 1. 前言 我们考虑这么一种场景,协程A执行过程中需要创建子协程A1.A2.A3-An,协程A创建完子协程后就等待 ...
- docker搭建mysql集群
目录 一.集群方案 二.安装PXC集群 三.Haproxy负载均衡 四.访问测试 五.节点宕机或重启 六.参考 一.集群方案 1.Replication 速度快,但仅能保证弱一致性,适用于保存价值不高 ...
- 这些经常被忽视的SQL错误用法,你有没有踩过坑?
之前已经讲过mysql的性能优化,感兴趣的朋友可以看看之前的文章,<史上最全的MySQL高性能优化实战总结!>.但是有些问题其实是我们自身的SQL语句有问题导致的.今天就来总结哪些经常被我 ...
- PyQt4制作GUI
时间:2018-11-30 记录:byzqy 标题:PyQt4入门学习笔记(一) 地址:https://www.cnblogs.com/chuxiuhong/p/5865201.html 标题:PyQ ...
- (一)Superset 1.3图表篇——Table
本系列文章基于Superset 1.3.0版本.1.3.0版本目前支持分布,趋势,地理等等类型共59张图表.本次1.3版本的更新图表有了一些新的变化,而之前也一直没有做过非常细致的图表教程. 而且目前 ...
- Netty ServerBootstrap如何绑定端口
这篇讲netty服务端ServerBootstrap如何启动 前言 BootStrap在netty的应用程序中负责引导服务器和客户端.netty包含了两种不同类型的引导: 使用服务器的ServerBo ...
- hyperf从零开始构建微服务(一)——构建服务提供者
阅读目录 什么是服务 构建服务提供者 1.创建数据表 2.构建服务提供者 3.安装json rpc依赖 4.安装rpc server组件 5.修改server配置 6.配置数据库 7.编写基础代码 7 ...
- 循环神经网络LSTM RNN回归:sin曲线预测
摘要:本篇文章将分享循环神经网络LSTM RNN如何实现回归预测. 本文分享自华为云社区<[Python人工智能] 十四.循环神经网络LSTM RNN回归案例之sin曲线预测 丨[百变AI秀]& ...
- shell脚本获取文件名、路径名、文件类型
1. 从字符串获取指定内容 从字符串中提取特定的信息,常用于获取文件名.文件类型.所在路径等. 1.1 获取字符串信息 用指定的方式(PATTERN)从字符串(PARAMETERS)中移除内容 &qu ...