成人无码视频,亚洲精品久久久久av无码,午夜精品久久久久久毛片,亚洲 中文字幕 日韩 无码

資訊專欄INFORMATION COLUMN

js基礎(chǔ) 數(shù)組與字符串

liaosilzu2007 / 1982人閱讀

摘要:最近在梳理的基礎(chǔ),首先從數(shù)組和字符串開始。如果超出有效范圍與字符串長(zhǎng)度減一的索引值返回空字符串返回對(duì)象內(nèi)第一次出現(xiàn)子字符串位置。將字符串以參數(shù)分割為數(shù)組方法返回一個(gè)字符串,該字符串中的字母被轉(zhuǎn)換成小寫。

最近在梳理js的基礎(chǔ),首先從數(shù)組和字符串開始。
string 常用方法:

1.substring(start開始位置的索引,end結(jié)束位置索引) 截取的位置不包含結(jié)束位置的字符,只寫一個(gè)參數(shù)表示從開始位置截取到最后
str.substring(1)  //得到bcdefg    str.substring(1,3)  //得到bc

輸入負(fù)值時(shí)將負(fù)值變?yōu)?,哪個(gè)較小作為開始位置

str.substing(-1,1)  =>str.substring(0,1) //a
str.substring(1,-2) =>str.substring(0,1) //a```

    2.slice(start開始位置索引,end結(jié)束位置索引) 基本和substring相似,區(qū)別在參數(shù)為負(fù)數(shù)。
    str.slice(1)   //bcdefg           str.substring(1,3) // bc

    輸入負(fù)值時(shí) 值與字符串的長(zhǎng)度相加

    str.slice(-1)      =>str.slice(6)    //g
    str.slice(1,-2) =>str.slice(1,5)  //bcde
    str.slice(-2,-1)=>str.slice(5,6)  //f
    值絕對(duì)值大于字符串的長(zhǎng)度時(shí)變?yōu)?0

    str.slice(-22) =>str.substring(0)  //abcdefg

    第二個(gè)參數(shù)絕對(duì)值大于字符串的長(zhǎng)度時(shí),返回""```

3.substr(start開始位置索引,end需要返回的字符個(gè)數(shù))
str.substr(1)  //bcdefg            str.substr(1,1)  //b

輸入負(fù)值時(shí) start參數(shù)與字符串的長(zhǎng)度相加 ,end為負(fù)時(shí)參數(shù)變?yōu)?

str.substr(-1) =>str.substr(6)//g                 

str.substr(-2,-3)  // ""```

    4.charAt(index) 方法返回指定索引位置處的字符。如果超出有效范圍(0與字符串長(zhǎng)度減一)的索引值返回空字符串.
    str.charAt(2)  // c```

5.index(string)  返回String對(duì)象內(nèi)第一次出現(xiàn)子字符串位置。如果沒有找到子字符串,則返回-1。

    ```var str="abcdefga"  str.indexOf("a")  // 0   str.indexOf("h") //-1```
6.lastIndexOf(string)  倒敘查找

 返回String對(duì)象內(nèi)第一次出現(xiàn)子字符串位置。如果沒有找到子字符串,則返回-1。   
    ```var str="abcdefga"     str.lastIndexOf("a") // 7```

7.split(str)  將字符串以參數(shù)分割為數(shù)組

   ```var str="abcadeafg"     str.split("a") //["", "bc", "de", "fg"]```

8. toLowerCase方法返回一個(gè)字符串,該字符串中的字母被轉(zhuǎn)換成小寫。


9. toUpperCase方法返回一個(gè)字符串,該字符串中的所有字母都被轉(zhuǎn)換為大寫字母。

10.match() – 方法可在字符串內(nèi)檢索指定的值,或找到一個(gè)或多個(gè)正則表達(dá)式的匹配 
11.search  方法返回與正則表達(dá)式查找內(nèi)容匹配的第一個(gè)字符串的位置。
12.replace 用來查找匹配一個(gè)正則表達(dá)式的字符串,然后使用新字符串代替匹配

  

數(shù)組常用的方法

1. push      添加到最后        返回添加后的數(shù)組

2. unshift   添加到最前面      返回添加后的數(shù)組 

3. shift     刪除(從前面)    返回處理后的數(shù)組

4. pop       刪除最后一項(xiàng)      返回處理后的數(shù)組

5. reverse   數(shù)組翻轉(zhuǎn)          返回處理后的數(shù)組

6. join      數(shù)組轉(zhuǎn)化為字符串  

   var arr=[1,2,3,4,5],  str=arr.join("--"); 

   console.log(str);  // 1--2--3--4--5  以join內(nèi)的參數(shù)切割數(shù)組

   console.log(arr);  // [1,2,3,4,5]    原數(shù)組未變
7. slice(start,end)     截取數(shù)組 從start(開始) 到end(結(jié)束 不包含)
                        
                        返回新數(shù)組,原數(shù)組不變
console.log(new);   // [3,4]

console.log(arr);   // [1,2,3,4,5]```                      

    8. concat   數(shù)組合并


    9. splice(開始下標(biāo),個(gè)數(shù),ele1,ele2....) 剪接數(shù)組 

       (1).一個(gè)參數(shù)  從參數(shù)位置截取 填寫負(fù)數(shù)類似上面str slice  返回截好的數(shù)組 原數(shù)組變化
 var arr=[1,2,3,4,5];

 console.log(arr.splice(1));   // [2,3,4,5]

 console.log(arr);             // [1]

 console.lgo(arr.splice(-1))   // [5]

       (2).二個(gè)參數(shù)  截取 (開始位置,個(gè)數(shù)) 返回截好的數(shù)組 原數(shù)組變化

 var arr=[1,2,3,4,5];

 console.log(arr.splice(1,3)); //  [2,3,4]

 console.log(arr)              //  [1,5]

 arr.splice(0,1) =>arr.shift()

 arr.splcie(arr.length-1,1)  =>arr.pop()

       (3).添加  原數(shù)組增加

 var arr=[1,2,3,4,5];

 console.log(arr.splice(1,0,13)); // []

 console.log(arr);                // [1,13,2,3,4,5]

       (4).替換 
       
 var arr=[1,2,3,4,5];

 console.log(arr.splice(1,2,"a","b")) // [2,3]

 console.log(arr);                // [1,"a","b",4,5]


 arr.splice(0,0,1) =>arr.unshift(1);

 arr.splice(arr.length,0,1) => arr.push(1)

    10. arr.forEach(item,index,array){}   遍歷,循環(huán) 類似jquery的each

其中的item參數(shù)是數(shù)組中的內(nèi)容,index為其索引,array表示數(shù)組本身

var arr=[1,2,3,4,5];
arr.forEach(function(item,index,array){

})

遇到嵌套跳出循環(huán)出現(xiàn)問題,暫時(shí)沒有解決;

    11. map方法    映射 用法和forEach類似

var men=[
    {"name":1,"age":12},
    {"name":2,"age":22},
    {"name":3,"age":33}
],

age=men.map(function(item){
    return item.age;
})

    12. arr.sort  排序

var arr=[1,2,22,11,33,3,5,4];

console.log(arr.sort()) // [1,11,2,22,3,33,4,5] 

默認(rèn)情況下sort方法是按ascii字母順序排序的,而非我們認(rèn)為是按數(shù)字大小排序

arr.sort(function(a,b){ return a-b}) 

a-b從小到大 b-a從大到小 


    13.  順便寫寫我知道的排序方法

(1)冒泡排序  每次比較相鄰的兩個(gè)數(shù),如果后一個(gè)數(shù)比前一個(gè)數(shù)小,換位置
        var tmp;
        for(var i=0,len=arr.length-1;iarr[j+1]){
                    //換位置
                    tmp=arr[j+1];
                    arr[j+1]=arr[j];
                    arr[j]=tmp;
                }
            }
        }
        return arr;
    } 

    function bSort(arr){
        var tmp;
        arr.forEach(function(item,i){
            arr.forEach(function(item,i){
                if(item>arr[i+1]){
                    //換位置
                    tmp = arr[i + 1];
                    arr[i + 1] = arr[i];
                    arr[i] = tmp;
                }
            })
        })
        return arr
    }```

    (2)快速排序 二分法,找到中間的數(shù),取出來(新數(shù)組),原數(shù)組沒,每次和此數(shù)比較,小的放到左邊,大的放到右面
   var len=arr.length;
   if(len<=1){ return arr}
   var   cIndex=Math.floor(len/2),
         c=arr.splice(c,1),
         left=[],
         right=[];
   arr.forEach(function(item,i){
       if(item
            arr2=[];
            function find(arr2,ele){
              for(var i= 0,len=arr2.length;i
json={},
arr2=[];

 arr.forEach(function(item,i){
     if(!json[item]){
         json[item]=222;
     }
 });
 for(var name in json){
     arr2.push(Number(name));//類型發(fā)生變化了
 }```

         (3) 利用sort方法排序,去掉旁邊相同項(xiàng)
        arr2=[];
        arr.sort();
        for(var i=0;i
 str=str.substring(str.lastIndexOf(".")+1);
(2) var str="1.xxx.avi";
     
  var arr=str.split(".");
      
  console.log(arr[arr.length-1]);```

        2.字母翻轉(zhuǎn),首字母大寫
       arr=str.split(" ");
       for(var i=0;i
json={},
n= 0,
sName;

for(var i= 0,len=str.length;i
            if(json[name]>n){
                n=json[name];
                sName=name;
            }
        }
        console.log("出現(xiàn)最多的字母"+sName+"次數(shù)為"+n);```

    4.  簡(jiǎn)單的url參數(shù)解析
  var search = window.location.search.substring(1);
  if (!search) {
      return;
  }
  var arr = search.split("&"),
          arr2 = [],
          json = {},
          key,
          alue;
  for (var i = 0; i < arr.length; i++) {
      arr2 = arr[i].split("=");

      key = arr2[0];
      value = arr2[1];
      json[key] = value;
  }

  return json;

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://m.hztianpu.com/yun/83253.html

相關(guān)文章

  • 【連載】前端個(gè)人文章整理-從基礎(chǔ)到入門

    摘要:個(gè)人前端文章整理從最開始萌生寫文章的想法,到著手開始寫,再到現(xiàn)在已經(jīng)一年的時(shí)間了,由于工作比較忙,更新緩慢,后面還是會(huì)繼更新,現(xiàn)將已經(jīng)寫好的文章整理一個(gè)目錄,方便更多的小伙伴去學(xué)習(xí)。 showImg(https://segmentfault.com/img/remote/1460000017490740?w=1920&h=1080); 個(gè)人前端文章整理 從最開始萌生寫文章的想法,到著手...

    madthumb 評(píng)論0 收藏0
  • JS基礎(chǔ)入門篇(十)— 數(shù)組方法

    摘要:返回值拼接后的字符串。返回值新數(shù)組的。語法返回值被刪除的那一個(gè)元素。返回值排序后的數(shù)組當(dāng)什么都不傳入的時(shí)候,默認(rèn)由小到大排列。傳入的時(shí)候,內(nèi)的返回值小于或者等于,數(shù)組序列不變。 1.join 作用: 將數(shù)組通過指定字符拼接成字符串。語法: string arr.join([separator = ,]);參數(shù): separator可選,如果省略的話,默認(rèn)為一個(gè)逗號(hào)。如果 seprato...

    zero 評(píng)論0 收藏0
  • JS基礎(chǔ)入門篇(十)— 數(shù)組方法

    摘要:返回值拼接后的字符串。返回值新數(shù)組的。語法返回值被刪除的那一個(gè)元素。返回值排序后的數(shù)組當(dāng)什么都不傳入的時(shí)候,默認(rèn)由小到大排列。傳入的時(shí)候,內(nèi)的返回值小于或者等于,數(shù)組序列不變。 1.join 作用: 將數(shù)組通過指定字符拼接成字符串。語法: string arr.join([separator = ,]);參數(shù): separator可選,如果省略的話,默認(rèn)為一個(gè)逗號(hào)。如果 seprato...

    張利勇 評(píng)論0 收藏0
  • JS基礎(chǔ)入門篇(十)— 數(shù)組方法

    摘要:返回值拼接后的字符串。返回值新數(shù)組的。語法返回值被刪除的那一個(gè)元素。返回值排序后的數(shù)組當(dāng)什么都不傳入的時(shí)候,默認(rèn)由小到大排列。傳入的時(shí)候,內(nèi)的返回值小于或者等于,數(shù)組序列不變。 1.join 作用: 將數(shù)組通過指定字符拼接成字符串。語法: string arr.join([separator = ,]);參數(shù): separator可選,如果省略的話,默認(rèn)為一個(gè)逗號(hào)。如果 seprato...

    Batkid 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

閱讀需要支付1元查看
<