将JavaScript字符串拆分为字符数组的替代语法?

时间:2014-01-16 06:57:19

标签: javascript arrays string split

我想将字符串拆分为单个字符以进行输出,我想使用string.split(“”)将我的字符串转换为数组,但我发现它没有必要。看看这个:

<script type = "text/javascript" language = "Javascript">
var vx = "FGHIFKL"
for (var i = 0; var i<vx.length; i++)
{
document.write(vx[i]); // Outputs FGHIFKL
} 
</script>

在没有明确使用的情况下,您似乎可以使用vx [0]访问字符串,就好像它们是数组一样  str.split。因为vx [0] = F,vx [1] = G等。这种语法通常是允许的,甚至建议在浏览器中使用?为什么这甚至有效呢?直到今天我才知道你可以这样做。提前谢谢!

3 个答案:

答案 0 :(得分:2)

是的,您可以使用[]表示法从JS字符串中提取单个字符。

请记住,这在较旧的IE中不起作用(7肯定会失败,我相信8也会失败)。

您可以将charAt用于跨浏览器解决方案

"asdf".charAt(1) === "s";

答案 1 :(得分:1)

JavaScript中的String是一系列字符。

有两种方法可以获取字符串中的单个字符。

  1. charAt方法:str.charAt(n)
  2. ECMAScript 5引入了一种将字符串视为类似数组的对象的方法:str[n]
  3. 另一方面,split方法返回一个新数组,该数组是 strings 的数组,分为子串。有趣的是,如果split方法的separator参数是空字符串,则字符串将转换为字符数组。

答案 2 :(得分:0)

从ES5开始,读取字符串的数字指标是javascript的可靠特性。这些索引属性与数组上的不完全相同,因为它们不可写或可配置。有关更多信息,请查看MDN page字符串和ECMAScript语言规范部分15.5.515.5.5.2