清淨
  • Java

    • Java 基础
  • 框架

    • Flyway
    • MapStruct
    • Spring Cloud
  • 中间件

    • Elasticsearch
    • Redis
    • RabbitMQ
    • Kafka
  • 三剑客

    • HTML
    • CSS
    • JavaScript
  • 进阶

    • jQuery
    • ECMAScript6
    • TypeScript
  • Vue

    • Vue2
    • Vue3
    • VuePress
  • Linux
  • Jenkins
  • Maven
  • MySQL
  • 插件工具
  • 代码集成
  • 其它

    • 数据结构与算法
    • 计算机网络
    • 操作系统
    • 设计模式
迁移日志
订阅号
微信订阅号
微信订阅号
GitHub
  • Java

    • Java 基础
  • 框架

    • Flyway
    • MapStruct
    • Spring Cloud
  • 中间件

    • Elasticsearch
    • Redis
    • RabbitMQ
    • Kafka
  • 三剑客

    • HTML
    • CSS
    • JavaScript
  • 进阶

    • jQuery
    • ECMAScript6
    • TypeScript
  • Vue

    • Vue2
    • Vue3
    • VuePress
  • Linux
  • Jenkins
  • Maven
  • MySQL
  • 插件工具
  • 代码集成
  • 其它

    • 数据结构与算法
    • 计算机网络
    • 操作系统
    • 设计模式
迁移日志
订阅号
微信订阅号
微信订阅号
GitHub
  • JavaScript

    • 简介
    • 数据类型
    • 基本语法
    • 对象
    • 函数
    • 作用域
    • this
    • 垃圾回收
    • 数组
    • 字符串
    • 正则表达式
    • DOM API
    • BOM
    • 定时器
    • 执行上下文
    • 闭包

字符串

常用方法

字符串在底层是以字符数组的形式保存的。

var str = 'hello world!';
console.log(str[0]); // h
  • charAt()

    返回在指定位置的字符。

    var str = 'hello world!';
    console.log(str[0]);
    console.log(str.charAt(1)); // e
    
  • charCodeAt()

    返回指定位置字符的 Unicode 编码。

  • fromCharCode()

    从字符编码创建一个字符串。

    // 参数使用十进制
    var s = String.fromCharCode(72);
    // 参数使用十六进制
    var s = String.fromCharCode(0x1236);
    
  • concat()

    连接字符串,相当于使用 + 号。

    var str = 'hello world!';
    var s;
    s = str.concat("您好","世界");
    console.log(s);
    
  • indexOf()

    检索字符串,返回某个指定的字符串值在字符串中首次出现的位置。

    var str = 'hello world!';
    console.log(str.indexOf("or"));
    

    完整语法是 `stringObject.indexOf(searchvalue, fromindex):

    参数描述
    searchvalue必需。规定需检索的字符串值。
    fromindex可选的整数参数。规定在字符串中开始检索的位置。它的合法取值是 0 到 stringObject.length - 1。如省略该参数,则将从字符串的首字符开始检索。

    注意

    indexOf() 方法对大小写敏感,如果要检索的字符串值没有出现,则该方法返回 -1。

  • lastIndexOf()

    从后向前搜索字符串。

  • slice()

    提取字符串的片断,并在新的字符串中返回被提取的部分。

    var str = 'hello world!';
    s = str.slice(0,2);
    console.log(s);
    

    作用效果和 substring() 相似,都可以传递负数,且不包含结束的下标。

  • substring()

    提取字符串中两个指定的索引号之间的字符。不包含结束的下标,可以传递负数(会自动加上字符串长度,如果没有该范围,会返回 '')。

  • substr()

    从起始索引号提取字符串中指定数目的字符,索引可以是负数。

正则表达式相关方法

  • split()

    默认就是全局匹配。

    var str = 'hello world!';
    s = str.split(/\s/);
    console.log(s.toString());
    
  • search()

    搜索字符串中是否含有指定内容,并返回第一次出现的索引,默认是全局匹配。

    var str = 'hello world!';
    console.log(str.search("abc"));
    console.log(str.search(/a[abcl]c/));
    
  • match()

    找到一个或多个正则表达式的匹配。

    s = "oell0jhdlldd".match("ll");
    s = "owlell0ncjhdlldd".match(/[A-z]/gi);
    console.log(s);
    
  • replace()

    替换与正则表达式匹配的子串。

    var ss = "mvkjjdkl";
    var m = ss.replace(/k/g,'0');
    console.log(m);
    

    由于没有 replaceAll(),所以,如果想要替换所有的, 就需要用正则表达式。

想要编辑此页?
上次更新: 2025/6/4 23:16
贡献者: Junfeng Dai
←数组正则表达式→
[ 纸上得来终觉浅绝知此事要躬行 ]
Copyright © 2021-present Junfeng Dai
蜀ICP备2021009537号