2013-04-12 50 views
0
var str = 'foobar'; 
console.log(str[4]); 

prints: 
a 

這證明字符串的行爲也像一個數組。我正確嗎?運算符[]和字符串(如charAt())

+1

定義「類似數組行爲」。字符串需要「像數組一樣」才能被認爲是真的嗎? – deceze

+0

我不知道「證明」,但字符串被指定爲支持對字符進行類似數組的訪問(只讀):https://developer.mozilla.org/en/docs/JavaScript/Reference/ Global_Objects/String – Thilo

+0

可能[duplicate](http://stackoverflow.com/questions/5943726/string-charatx-or-stringx) –

回答

3

你不能在指定索引字符集,所以,不,不是真的:

> var a = 'foo'; 
undefined 
> a[0] = 'x'; // No warning, no error. It just silently fails. 
"x" 
> a 
"foo" 
+0

+1。這在規範中也有提到(https://developer.mozilla.org/en/docs/JavaScript/Reference/Global_Objects/String):「對於使用括號表示的字符訪問,試圖刪除這些屬性或爲其賦值將不會成功。「 – Thilo