天天看點

php 數組和字元串比較,字元串(與數組相進行比較)

JavaScript中的字元串和數組都是類數組(類數組就是包含有length屬性,常見的是函數中的arguments的對象以及DOM方法傳回的結果)。

一、與數組的相似點

兩者也有很多相似的地方,兩者都有length屬性以及indexOf()和concat()方法。

php 數組和字元串比較,字元串(與數組相進行比較)

二、與數組的不同點

在js中,字元串是不可變的(可參考 連結描述 ),而數組是可變的。解釋如下:

let arr = [1, 2, 3];

arr[1] = 4; // 此時arr = [1, 4, 3]

let str = 'string';

str[1] = 'q'; // 此時雖然不會報錯,但str還是為'string';就算使用了.charAt(1)也無效,還會報錯

綜上,字元串不可變的意思是,字元串的成員函數不會改變其原始值,而是建立并傳回一個新的字元串;相比較數組,數組的成員函數都是在其原始值上進行操作。

字元串和數組還有一個不同點,在于反轉函數。數組有一個可變更成員函數reverse(),而字元串則沒有,因為字元串是不可變的。

想要字元串進行反轉,需要分為以下三步:

1、将字元串變為字元數組;

2、将數組中的字元進行倒轉;

3、将數組中的字元拼接回字元串

過程如下:

let str = 'string';

let nweStr = str.split('').reverse().join(''); // 先拆分,接着逆序,最後拼接,得到的字元串就是'gnirts'

字元串的内容就到此結束。