JS中實現字符串和數組的相互轉化

 早上起來看了一道js的面試題,是這樣描述的:利用var s1=prompt("請輸入任意的字符串","")能夠獲取用戶輸入javascript

的字符串,試編程將用戶輸入的字符串「反轉」,而且將字符串輸出。java

        想了一下,字符串對象的方法中並無實現反轉的,可是數組中有,因而考慮了字符串和數組的相互轉換問題。面試

        JS中的內置對象中包括字符串對象(String)和數組對象(Array),這兩個對象是能夠經過它們對象的方法實現相互編程

轉化的。對於String對象,提供了對字符串進行操做的屬性和方法;對於Array對象,提供了數組操做方面的屬性和方數組

法。所以咱們實現上面的面試題就容易了。spa

       一首先來看字符串轉化爲數組

       String對象中的split()方法

       上述方法的功能是:將一個字符串切割成若干段,返回一個數組。也就是說,能夠將一個字符串轉成數值。如:.net

strObj.split(分割號),參數是一個分割號的字符串,用指定的分割號將字符串切成若干段。對象

       實例:blog

 

[javascript]  view plain  copy
 
 print?
  1. <span style="font-size:18px;">//要求輸出今天是星期幾  
  2. //定義一個星期字符串  
  3. var str="星期日,星期一,星期二,星期三,星期四,星期五,星期六";  
  4. //建立一個日期對象  
  5. var today=new Date();  
  6. //使用today對象的getDay()方法  
  7. var week=today.getDay();  
  8. //將星期字符串分割成一個數組  
  9. var arr=str.split(",");  
  10. document.write("類型是:"+typeof(arr)+",數組的第一個元素是:"+arr[0]+"<br />");  
  11. //輸出結果  
  12. document.write("今天是:"+arr[week]);</span>  

 

 

       輸出的結果是:類型是:object,數組的第一個元素是:星期日ip

                  今天是:星期五

       二再來看數組轉換爲字符串和數組元素實現反轉

       Array對象的join()方法

       上述方法的功能是:將一個數組轉成字符串。如:arrObj.join(鏈接號),將一個數組用指定的鏈接號連接成一個字

符串。

       實例:

 

[javascript]  view plain  copy
 
 print?
  1. <span style="font-size:18px;">var arr=["a","b","c"];  
  2. var str=arr.join("-");  
  3. document.write("類型是:"+typeof(str)+",字符串是:"+str);</span>  

 

       輸出的結果是:類型是:string,字符串是:a-b-c

       Array對象的reverse()方法

       上述方法的功能是:將數組中各元素顛倒順序。如:arrObj.reverse()。

       實例:

 

[javascript]  view plain  copy
 
 print?
  1. <span style="font-size:18px;">var arr=["a","b","c"];  
  2. arr.reverse();  
  3. document.write(arr);</span>  

       輸出的結果是:c,b,a

 

       三最後咱們來看面試題的實現代碼:

 

[javascript]  view plain  copy
 
 print?
  1. <span style="font-size:18px;">/* 
  2.   利用var s1=prompt("請輸入任意的字符串","")能夠獲取用戶輸入 
  3.   的字符串,試編程將用戶輸入的字符串「反轉」,而且將字符串輸出。 
  4. */  
  5. //接受字符串  
  6. var s1=prompt("請輸入任意的字符串","");  
  7. //字符串轉換爲數組  
  8. var arr=s1.split("");  
  9. //利用數組對象的reverse()方法實現反轉  
  10. arr.reverse();  
  11. //利用數組的join()方法轉換爲字符串  
  12. var str=arr.join("");  
  13. document.write(str);</span>  

         實現的結果:

 

 

合成一條語句就是:var result = "beijing".split("").reverse().join("");
 
from: http://blog.csdn.net/erlian1992/article/details/50561452
相關文章
相關標籤/搜索