JS基礎知識整理01 字串和陣列

2021-09-27 11:57:21 字數 2539 閱讀 1483

length屬性  返回字串的長度

檢索匹配:

indexof/lastindexof(字串,檢索起始位置) 方法返回字串中指定文字首次/最後出現的索引(位置):(無則返回-1)

search(字串) 作用跟indexof一樣,區別(1.沒有第二引數,2.indexof不支援正則,search支援)

提取部分字串:(負值位置不適用 internet explorer 8 及其更早版本)(第二引數預設擷取剩餘的全部)

slice(start, end) (支援負數索引)

substring(start, end)(不支援負數索引)

substr(start, length)(第二引數為長度,支援負數索引)

替換字串內容:

replace() 不改變原字串,返回的是新字串。預設只替換首個匹配,對大小寫敏感 (支援正則)

轉換為大寫和小寫:

touppercase()

tolowercase()

concat() 跟+運算子一樣

提取字串字元:(position為索引)

字串可以通過索引訪問唯讀不可修改(無則返回undefined)

charat(position) 返回對應的字元 (無則返回空串)

charcodeat(position) 返回對應的unicode 編碼

把字串轉換為陣列:

split(分隔符) 將字串以分隔符隔開為陣列

string.trim() 方法刪除字串兩端的空白符

arr = [1,2,3]:

通過索引訪問可以修改值(不支援負索引) arr[index]

length屬性 返回陣列的長度

sort() 方法對陣列進行排序

可以在新增 引數對比函式 sort(function(a,b))返回負數則a排在b前 0或正數則b排在a前

sort((a, b)=> a - b); 在對數字進行排序時需要通過體格比值函式來修正

sort((a, b)=> 0.5 - math.random()); 以隨機順序排序陣列

物件陣列排序 可以通過對比函式對比物件的屬性 如:sort(function(a, b));

reverse() 反轉陣列中的元素

查詢陣列中最大最小值

新增元素:

可以使用索引來新增元素如:arr[5]= 5 同時由於a[3]和[4]為賦值故為undefined

push() 在陣列尾部新增新元素

如何判斷變數是不是陣列:

array.isarray(arr)

arr instanceof array

陣列轉換為字串:

join(分隔符) 將陣列元素結合為乙個字串 元素之間用分隔符鏈結

對陣列的操作:

pop() 彈出陣列最後乙個元素並可以用乙個變數接收

push(元素) 在陣列的最後新增乙個元素

shift() 刪除首個陣列元素 (其他元素索引自動更新)

unshift() 在開頭想陣列新增新元素 (其他元素索引自動更新)

拼接陣列:

splice(新增新元素的位置,應刪除多少元素,*args) 在指定位置刪除指定個元素新增一或多個元素

concat(arr1,arr2...) 合併現有一或多陣列來建立乙個新陣列

裁剪陣列:

slice(start,end) end預設裁剪剩餘全部

迭代:* arr.foreach(function(value, index, array){}) 每個陣列元素呼叫一次函式

arr.map(function(value, index, array){}) 通過對每個陣列元素執行函式後來建立新陣列(array)

arr.filter(function(value, index, array){}) 建立乙個包含通過測試的陣列元素的新陣列 (array)

arr.every(function(value, index, array){}) 檢查所有陣列時候通過測試 (boolean)

* arr.some(function(value, index, array){}) 檢查時候有陣列值通過測試 (boolean)

arr.find(function(value, index, array){}) 返回通過測試函式的第乙個陣列元素的值 (value)

arr.findindex(function(value, index, array){}) 返回通過測試函式的第乙個陣列元素的索引 (index)

arr.indexof("***",start) 陣列中搜尋元素值並返回其位置

arr.lastindexof("***",start) 從陣列結尾開始搜尋元素值並返回其位置

arr.reduce(function(total,value, index, array){}) 每個陣列元素上執行函式,最後生成單個值。

arr.reduceright(function(total,value, index, array){}) 從右開始

基礎練習 01字串

問題描述 對於長度為5位的乙個01串,每一位都可能是0或1,一共有32種可能。它們的前幾個是 00000 00001 00010 00011 00100 請按從小到大的順序輸出這32種01串。輸入格式 本試題沒有輸入。輸出格式 輸出32行,按從小到大的順序每行乙個長度為5的01串。樣例輸出 0000...

基礎練習 01字串

問題描述 對於長度為5位的乙個01串,每一位都可能是0或1,一共有32種可能。它們的前幾個是 00000 00001 00010 00011 00100 請按從小到大的順序輸出這32種01串。輸入格式 本試題沒有輸入。輸出格式 輸出32行,按從小到大的順序每行乙個長度為5的01串。樣例輸出 0000...

基礎練習 01字串

時間限制 1.0s 記憶體限制 256.0mb 錦囊1使用五層迴圈。錦囊2最外面一層迴圈列舉最左邊一位,第二層迴圈列舉左邊第二位,依次類推,第五層迴圈列舉最低位。問題描述 對於長度為5位的乙個01串,每一位都可能是0或1,一共有32種可能。它們的前幾個是 請按從小到大的順序輸出這32種01串。輸入格...