亚洲中字慕日产2020,大陆极品少妇内射AAAAAA,无码av大香线蕉伊人久久,久久精品国产亚洲av麻豆网站

資訊專欄INFORMATION COLUMN

【譯】JS基礎(chǔ)算法腳本:數(shù)組分割

djfml / 1474人閱讀

摘要:方法返回一個(gè)從開(kāi)始到結(jié)束不包括結(jié)束選擇的數(shù)組部分淺拷貝到一個(gè)新數(shù)組對(duì)象方法通過(guò)刪除現(xiàn)有元素和或添加新元素來(lái)更改一個(gè)數(shù)組的內(nèi)容。

需求

給出一個(gè)數(shù)組,按長(zhǎng)度要求分割成多維數(shù)組

chunkArrayInGroups([0, 1, 2, 3, 4, 5, 6], 3) should return [[0, 1, 2], [3, 4, 5], [6]]
chunkArrayInGroups(["a", "b", "c", "d"], 2) should return [["a", "b"], ["c", "d"]]
思路1

1.arr.splice()截取數(shù)組
2.當(dāng)數(shù)組元素截取完時(shí),停止截取,返回新數(shù)組

function chunkArrayInGroup(arr,size) {
    var newArr = [];
    while(arr.length>0) {
        newArr.push(arr.splice(0,size));
    }
    return newArr;
}

chunkArrayInGroups([0, 1, 2, 3, 4, 5, 6], 3);
思路2

1.arr.slice()截取數(shù)組
2.當(dāng)數(shù)組元素截取完時(shí),停止截取,返回新數(shù)組

function chunkArrayInGroup(arr,size) {
    var newArr = [],
    i=0;
    while(i
function chunkArrayInGroups(arr, size) {
  // Break it up.
  var arr2 = [];
  for (var i = 0; i < arr.length; i+=size) {
    arr2.push(arr.slice(i , i+size));
  }
  return arr2;
}

chunkArrayInGroups([0, 1, 2, 3, 4, 5, 6], 3);
思路3

1.for循環(huán),暫存子數(shù)組
2.到達(dá)指定長(zhǎng)度,存入新數(shù)組
3.如有剩余元素,存入新數(shù)組

function chunkArrayInGroups(arr, size) {

  var temp = [];
  var result = [];

  for (var a = 0; a < arr.length; a++) {
    if (a % size !== size - 1)
      temp.push(arr[a]);
    else {
      temp.push(arr[a]);
      result.push(temp);
      temp = [];
    }
  }

  if (temp.length !== 0)
    result.push(temp);
  return result;
}
chunkArrayInGroups([0, 1, 2, 3, 4, 5, 6,7], 3);
相關(guān)
Array.prototype.push()

push() 方法將一個(gè)或多個(gè)元素添加到數(shù)組的末尾,并返回?cái)?shù)組的新長(zhǎng)度。

Array.prototype.slice()

slice()方法返回一個(gè)從開(kāi)始到結(jié)束(不包括結(jié)束)選擇的數(shù)組部分淺拷貝到一個(gè)新數(shù)組對(duì)象

Array.prototype.splice()

splice() 方法通過(guò)刪除現(xiàn)有元素和/或添加新元素來(lái)更改一個(gè)數(shù)組的內(nèi)容。

array.splice(start, deleteCount, item1, item2, ...)

有其他好的方法或思路的道友,不妨在沙發(fā)區(qū)神交一番。

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

轉(zhuǎn)載請(qǐng)注明本文地址:http://www.ezyhdfw.cn/yun/91411.html

相關(guān)文章

  • JS基礎(chǔ)算法腳本:反轉(zhuǎn)字符串

    摘要:需求反轉(zhuǎn)提供的字符串,返回字符串思路分割重排序重組相關(guān)函數(shù)將字符串分割成一個(gè)包含子字符的數(shù)組,使用指定的分割字符串來(lái)確定分割位置反轉(zhuǎn)數(shù)組中的元素不會(huì)改變數(shù)組,默認(rèn)為將一個(gè)數(shù)組或者類數(shù)組中的的所有元素拼接到一個(gè)字符串有其他好的方法或思路的道友 需求 反轉(zhuǎn)提供的字符串,返回字符串 reverseString(hello) should become olleh. 思路 分割 重排序 重組...

    kamushin233 評(píng)論0 收藏0
  • JS基礎(chǔ)算法腳本:查找字符串中最長(zhǎng)的子字符

    摘要:返回一組數(shù)中的最大值。返回?cái)?shù)組中所有元素的連接起來(lái)的字符串,參數(shù)默認(rèn)為,根據(jù)返回一個(gè)從開(kāi)始參數(shù)到結(jié)束參數(shù)的新數(shù)組,不改變?cè)瓟?shù)組有其他好的方法或思路的道友,不妨在沙發(fā)區(qū)神交一番。 需求 給出一個(gè)字符串,查找字符串中最長(zhǎng)的子字符,并返回其長(zhǎng)度 findLongestWord(Google do a barrel roll) 思路1 字符串分割 循環(huán)判定,暫存較大值 循環(huán)結(jié)束,返回最大值...

    forsigner 評(píng)論0 收藏0
  • JS基礎(chǔ)算法腳本:子字符首字符大寫(xiě)

    摘要:一個(gè)用來(lái)創(chuàng)建新子字符串的函數(shù),該函數(shù)的返回值將替換掉第一個(gè)參數(shù)匹配到的結(jié)果。返回值一個(gè)部分或全部匹配由替代模式所取代的新的字符串。 需求 給出一字符串,返回子字符首字符大寫(xiě)的字符串 titleCase(Im a little tea pot) should return Im A Little Tea Pot. 思路1 字符串小寫(xiě)后切割為數(shù)組 for循環(huán)操作數(shù)組元素的首字符 拼接字符...

    Worktile 評(píng)論0 收藏0
  • JS基礎(chǔ)算法腳本:回文檢測(cè)

    摘要:返回一個(gè)新的字符串,表示串轉(zhuǎn)換為小寫(xiě)的調(diào)用字符。不會(huì)影響字符串本身的值。返回一個(gè)包含子字符的數(shù)組,確定分割位置。將數(shù)組中所有子元素拼接成一個(gè)字符串,不改變?cè)瓟?shù)組。 需求 給出一個(gè)字符串,檢測(cè)是否是回文,是則返回true,不是則返回false(忽略標(biāo)點(diǎn)符號(hào),大小寫(xiě),空格) palindrome(A man, a plan, a canal. Panama) should return t...

    Turbo 評(píng)論0 收藏0
  • JS基礎(chǔ)算法腳本:查找數(shù)組每項(xiàng)的最大值

    摘要:方法對(duì)累加器和數(shù)組中的每個(gè)元素從左到右應(yīng)用一個(gè)函數(shù),將其減少為單個(gè)值。有其他好的方法或思路的道友,不妨在沙發(fā)區(qū)神交一番。對(duì)的方法有較深理解的的請(qǐng)指點(diǎn)下,這里有點(diǎn)蒙 需求 給出一個(gè)2維數(shù)組,查找每項(xiàng)子數(shù)組中的最大值,返回包含最大值的新數(shù)組 largestOfFour([[13, 27, 18, 26], [4, 5, 1, 3], [32, 35, 37, 39], [1000, 100...

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

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

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<