登录
首页 >  文章 >  前端

JavaScript字符串倒数字符获取方法

时间:2026-05-09 14:37:01 272浏览 收藏

JavaScript 的 `str.at(-1)` 是获取字符串最后一个字符最优雅、安全且语义清晰的方式——它原生支持负索引,空字符串或越界时统一返回 `undefined` 而不报错,比传统的 `str[str.length - 1]` 更直观、比 `str.slice(-1)` 更精准(直接返回字符而非字符串),且已在现代浏览器和 Node.js 16.6+ 中广泛支持;搭配可选链 `str?.at(-1)` 还能无缝处理 `null` 或 `undefined` 场景,堪称现代字符串操作的首选实践。

如何通过 at() 方法 优雅地获取字符串的倒数第一个字符

直接用 str.at(-1) 就能优雅获取字符串的倒数第一个字符,无需计算长度或使用 slice()

at() 方法天然支持负索引

at() 是 ES2022 引入的字符串(和数组)方法,专为简化索引访问设计。传入负数时,它自动从末尾开始计数:

  • "hello".at(-1)"o"
  • "a".at(-1)"a"
  • "".at(-1)undefined(安全,不报错)

比传统写法更简洁安全

过去常用 str[str.length - 1]str.slice(-1),但各有缺点:

  • str[str.length - 1]:空字符串时返回 undefined,虽不报错,但逻辑不够直观
  • str.slice(-1):返回字符串(如 "o"),但类型是 string 而非单个字符语义;且对空串也返回空串,不易区分“无字符”和“空字符”
  • at(-1):语义清晰、返回值统一(字符或 undefined)、空串/越界均安全

注意浏览器兼容性

目前主流现代浏览器(Chrome 92+、Firefox 90+、Safari 15.4+)均已支持。若需兼容旧环境,可搭配简单垫片(polyfill)或用 Babel 转译。Node.js 16.6+ 原生支持。

小技巧:结合可选链避免报错

如果字符串可能为 nullundefined,可组合可选链操作符:

  • str?.at(-1) —— 安全取倒数第一字符,str 为空时直接得 undefined
  • str && str.at(-1) 更简洁,也比三元判断更函数式

今天带大家了解了的相关知识,希望对你有所帮助;关于文章的技术知识我们会一点点深入介绍,欢迎大家关注golang学习网公众号,一起学习编程~

资料下载
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>