JavaScript 字符串 charAt() 方法

JavaScript charAt() 语法

charAt() 是 JavaScript 字符串的一个方法,它用于获取字符串中 “指定索引(下标)” 的字符。

语法:

str.charAt(index)

说明:

charAt() 方法接收单个参数。

  • index(可选):表示索引(下标),值从 0 开始。其默认值为 0,也就是说当 index 省略时,表示获取第 1 个字符。

注意: 如果 charAt() 的索引超出范围,即小于 0 或大于 str.length-1,则会返回一个空字符串。

JavaScript charAt() 摘要

属于 JavaScript String 对象
使用频率
修改原字符串
官方文档 查看
MDN 查看

JavaScript charAt() 示例

接下来,我们通过几个简单的例子来讲解一下 JavaScript charAt() 方法是如何使用的。

示例 1:charAt() 基本用法

const str = "绿叶网";

console.log(str.charAt(0));
console.log(str.charAt(1));
console.log(str.charAt(2));

运行结果如下。

绿
叶
网

示例 2:charAt() 不带参数

const str = "绿叶网";
console.log(str.charAt());

运行结果如下。

绿

分析:

当 charAt() 不带参数时,表示获取第 1 个字符。也就是说,str.charAt() 等价于 str.charAt(0)。

示例 3:charAt() 的索引超出范围

const str = "绿叶网";
const result = str.charAt(-2);

console.log(result === "");
console.log(result.length);

运行结果如下。

true
0

分析:

当 charAt() 方法的参数值不在范围内时,会返回一个空字符串。

示例 4:charAt() 获取最后一个字符

const str = "绿叶网";
const index = str.length - 1;

console.log(str.charAt(index));

运行结果如下。

示例 5:使用 charAt() 遍历字符串

const str = "lvye";
for (let i = 0; i < str.length; i++) {
    console.log(str.charAt(i));
}

运行结果如下。

l
v
y
e

分析:

我们可以结合 for 循环 和 charAt() 方法来遍历字符串中的每一个字符。

charAt() 与 “[]” 访问符的区别

字符串的 charAt() 方法和方括号 “[]” 都可以获取指定位置的字符,但它们之间存在一定的区别:当访问的索引超出字符串的有效范围时,charAt() 会返回一个空字符串,而 “[]” 访问符则会返回 undefined

示例 6:charAt() vs []

const str = "lvyenet";

console.log(str.charAt(10));
console.log(str[10]);

运行结果如下。

(空字符串)
undefined

charAt() 与 at() 的区别

charAt() 和 at() 这两个方法非常相似,它们都是通过下标来获取字符串中的某个字符。但它们之间也存在明显区别:charAt() 无法使用负下标,而 at() 可以使用负下标

实际上,ES6+ 推出 at() 方法,其目的就是为了取代 charAt() 方法。在实际开发中,我们也更推荐使用 at() 方法。

示例 7:获取最后一个字符

const str = "JavaScript";

// charAt()
const index = str.length - 1;
const result2 = str.charAt(index);
console.log(result2);

// at()
const result1 = str.at(-1);
console.log(result1);

运行结果如下。

t
t

分析:

可以明显看出,如果想要获取倒数第 n 个元素时,at() 比 charAt() 简单太多。

上一篇: at()

下一篇: charCodeAt()

给站长反馈

绿叶网正在不断完善中,小伙伴们如果发现任何问题,还望多多给站长反馈,谢谢!

邮箱:lvyenet@vip.qq.com

「绿叶网」服务号
绿叶网服务号放大
关注服务号,微信也能看教程。
绿叶网服务号