资讯专栏INFORMATION COLUMN

【javascript系列】字符串:字符串单个字符访问

Lin_R / 1141人阅读

摘要:访问字符串的单个字符获取字符串的某一单个字符有两种方法。说明字符串中的字符从左向右索引,第一个字符的索引值为,最后一个字符的索引值为。

访问字符串的单个字符

获取字符串的某一单个字符有两种方法。

第一种是使用 charAt 方法

> "hello".charAt(1)
"e"

第二种是使用 类数组的下标索引 方法

> "hello"[1]
"e"

下面来具体说说每一种访问方法。

charAt 方法

charAt() 方法返回字符串中指定位置的字符。

语法

str.charAt(index)

参数
index: 0字符串长度-1 的一个整数。

说明
字符串中的字符从左向右索引,第一个字符的索引值为 0,最后一个字符的索引值为 str.length - 1
如果指定的 index 值超出了该范围,则返回一个空字符串

示例

> a = "abcd"
"abcd"
> a.charAt(4) // index超出范围,返回一个空字符串
""
> a.charAt(0)
"a"
类数组的下标索引方法

因为字符串有length属性,并有可索引的属性0、1、2...等,所以可视为一个类数组对象。
类数组的下标索引方法 就是把字符串当作一个类数组对象(ECMA5),其中的每个字符对应一个数值索引。

语法

string[index]

注意,当index查出范围时,返回undefined.

示例

> a = "abcd"
"abcd"
> a[0]
"a"
> a[1]
"b"
> a[2]
"c"
> a[3]
"d"
> a[4]    //index超出范围,返回undefined.
undefined

注意,使用这种类数组的下标索引法,只可以访问字符而不可以对其进行删除或添加,因为对应属性并不是可读或可写的,毕竟类数组不是数组。

两种方法的比较 相同点

都是获取字符串某个位置的单个字符。

索引都从0开始。

不同点

使用charAt(index)的方式,index超出范围的,会返回一个空的字符串
使用string[index]的方式,index超出范围的,会返回undefined

可概括为兼容性问题。
charAtES3的方法,string[index]ES5的方法。所以charAt(index)兼容性强,在IE6~8下也能正常使用。string[index]的方式在IE6~8下会返回 undefined, 也就是IE6~8 不兼容此方法,只能用于IE8+。

string[index]还有一个不便之处,即不容易区分访问的是数组元素还是字符串,而且有可能让人误以为是可写的。

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/91076.html

相关文章

  • Javascript正则表达式详解(一)

    摘要:定义在中,定义一个正则表达式有两种方式,一种是直接量,另一种是使用构造函数。元字符在正则表达式的模式中,有一些字符是有特殊含义的,被称为元字符,如果要匹配元字符,则必须对其进行转义。正则表达式详解二 简介 先来一段介绍: 正则表达式,又称正规表示法、常规表示法(英语:Regular Expression,在代码中常简写为regex、regexp或RE),计算机科学的一个概念。...

    zeyu 评论0 收藏0
  • 正则系列——JavaScript正则表达式基础语法巩固篇

    摘要:基础语法巩固正则表达式引擎根据正则去匹配字符的时候,是通过检查索引的方式。妻原配就是好,可以直接使用正则表达式调用它。下面解释一下上面这些常用的元字符查找单个字符,除了换行和行结束符。正则系列文章整理到了 上一章内容:正则表达式实战篇 知识回顾 前2章分别学习了正则表达式入门技巧,以及遇到正则需求该如何去分析问题,还有正则表达式实战的一些场景解释。 这一章内容偏向理论,推荐你点击开头的...

    phodal 评论0 收藏0
  • OneAPM大讲堂 | 提高JavaScript性能的30个技巧

    摘要:技巧评估局部变量主要针对而言,由于局部变量的查找是从最特定作用域到最大作用域,且可以通过多个域层级,所以这种查找会导致查询到通用的结果。 文章系国内领先的 ITOM 管理平台供应商 OneAPM 编译呈现。 您是网站管理员还是网页开发人员?想创建超快速的网站吗? 今天我们来看看 JavaScript,这项神奇而又复杂的技术。它使网站内容更加丰富,但常常出现的运行性能问题又降低了用户的体...

    harryhappy 评论0 收藏0
  • underscore 系列之实现一个模板引擎(下)

    摘要:前言本篇接着上篇系列之实现一个模板引擎上。字符串中的每个字符均可由一个转义序列表示。在中,有四个字符被认为是行终结符,其他的折行字符都会被视为空白。 前言 本篇接着上篇 underscore 系列之实现一个模板引擎(上)。 鉴于本篇涉及的知识点太多,我们先来介绍下会用到的知识点。 反斜杠的作用 var txt = We are the so-called Vikings from th...

    gyl_coder 评论0 收藏0

发表评论

0条评论

Lin_R

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<