2014-02-19 30 views
1

我经常这样做:字符串分割到数组,然后在1线获得元素

var str = "hello_blue_world"; 
var arr = str.split("_"); 
var target = arr[1]; 

但因为我不需要arr,我注意到,我可以这样做:

var str = "hello_blue_world"; 
var target = str.split("_")[1]; 

我的问题:

  1. 此方法是否支持不同的ECMAScript版本?
  2. 这种方法安全吗?
+1

是的,它是安全的,顺便说一句,你有任何机会PHP的背景是什么? –

+1

完美安全并且支持Chrome浏览器,\t Firefox(Gecko),Internet Explorer,Opera和Safari https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Global_Objects/String/split# Browser_compatibility – spassvogel

+0

@FabrícioMatté是的我使用PHP,但我的问题纯粹是关于javascript – evilReiko

回答

3

对两者都是。这是安全的,并得到支持。

http://www.ecma-international.org/ecma-262/5.1/#sec-15.5.4.14

返回成此对象转换为字符串的结果子已存储

如果这是真的Array对象的str.split("_")计算为数组,你应该能够使用[x]来获取任何返回的元素。

+0

不应该这是一个评论? – TheVillageIdiot

+0

我认为你的回答是正确的,但它不基于任何来源或演示或参考 – evilReiko

+0

@TheVillageIdiot:不,有道理的问题值得回答。即使这个答案很短。 – Mike