国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

不能使用for循環,傳入n和m, 生成一個長度為n,每一項都是m的數組

elva / 837人閱讀

摘要:逛知乎的時候看到一個問題,不能使用循環,傳入和生成一個長度為,每一項都是的數組。方法三來自在捷克的獵人我后面也想到了,哈哈可以用或,來自灰色碰觸用用的少,一下就想不起來了希望能看到大家更好的方法,感覺自己進了死胡同

逛知乎的時候看到一個問題,不能使用for循環,傳入n和m, 生成一個長度為n,每一項都是m的數組。第一反應是遞歸,然后再想到正則,還在思考中...
遞歸法
function getArr(n,m) {
    // 方法一: 遞歸
    let arr = new Array(n)
    function setData (index) {
        if (index >= 0) {
            if (!arr[index]) {
                arr[index] = m
            }
            setData(index - 1)
        }
    }
    setData(arr.length - 1)
    return arr
} 
getArr(10, "aa") // ["aa", "aa", "aa", "aa", "aa", "aa", "aa", "aa", "aa", "aa"]
正則法
function getArr(n,m) {
    // 方法二: 正則 (缺點:當傳入的數據帶,時,以,為分隔符會出錯,邏輯還需要優化)
    let str = new Array(n).join(" ") // 生成對應長度的字符串
    str = str.replace(/s?/g, m)     // 使用正則替換得到對應的字符串
    str = str.replace(new RegExp(`(${m})`, "g"), "$1,") // 得到逗號分隔的字符串
    str = str.substring(0, str.length - 1)
    return str.split(",")
} 
getArr(3, "12345") // ["12345", "12345", "12345"]
fill()

來自ntnyq, ntnyq說的數組的fill()方法,之前都不知道的,感謝,然后立刻就想到了類似可以去完成功能的,map()和filter()。

function getArr(n,m) {
    // 方法三: fill()
    return Array(n).fill(m)
} 
getArr(10, "aa") // ["aa", "aa", "aa", "aa", "aa", "aa", "aa", "aa", "aa", "aa"]
map()

來自在捷克的獵人(我后面也想到了,哈哈)

function getArray(n, m){
    return result = Array(n).join(",").split(",").map(() => {
        return m
    })
}
while

可以用while 或 do ... while,來自灰色v碰觸

用while用的少,一下就想不起來了...

希望能看到大家更好的方法,感覺自己進了死胡同...

文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。

轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/101007.html

相關文章

  • 不能使用m>form>循環傳入m>nm>m, 生成一個長度m>nm>,每一都是m數組

    摘要:逛知乎的時候看到一個問題,不能使用循環,傳入和生成一個長度為,每一項都是的數組。方法三來自在捷克的獵人我后面也想到了,哈哈可以用或,來自灰色碰觸用用的少,一下就想不起來了希望能看到大家更好的方法,感覺自己進了死胡同 逛知乎的時候看到一個問題,不能使用for循環,傳入n和m, 生成一個長度為n,每一項都是m的數組。第一反應是遞歸,然后再想到正則,還在思考中... 遞歸法 function...

    ralap 評論0 收藏0
  • 不能使用m>form>循環傳入m>nm>m, 生成一個長度m>nm>,每一都是m數組

    摘要:逛知乎的時候看到一個問題,不能使用循環,傳入和生成一個長度為,每一項都是的數組。方法三來自在捷克的獵人我后面也想到了,哈哈可以用或,來自灰色碰觸用用的少,一下就想不起來了希望能看到大家更好的方法,感覺自己進了死胡同 逛知乎的時候看到一個問題,不能使用for循環,傳入n和m, 生成一個長度為n,每一項都是m的數組。第一反應是遞歸,然后再想到正則,還在思考中... 遞歸法 function...

    Vixb 評論0 收藏0
  • JavaScript 不使用循環,創建一個長度m數組,且數組每一項都m>nm>

    輸入createArr(3, abc)輸出[abc, abc, abc] 不使用循環,有以下方法: 1.遞歸法 showImg(https://segmentfault.com/img/bVbqlv3?w=289&h=289);思路如下:1.創建一個數組2.創建一個addEle函數用于給數組添加元素3.判斷count是否為0,不為0時給數組尾部添加元素,使count - 14.調用addEle函數...

    ARGUS 評論0 收藏0
  • 【JavaScript入門】Array類型

    摘要:數組也是對象數據類型的數組也有屬性名,只不過屬性名是數字,我們把數字屬性名稱之為它的索引數組是以數字作為索引,索引從零開始,有一個屬性代表數組的長度。 Array 數組也是對象數據類型的 typeof [] ->object數組也有屬性名,只不過屬性名是數字,我們把數字屬性名稱之為它的索引:數組是以數字作為索引,索引從零開始,有一個length屬性代表數組的長度。 showImg(h...

    zxhaaa 評論0 收藏0
  • JS基礎——數組API(1)

    摘要:不會修改原數組參數在每一項上調用的函數和作為歸并基礎的初始值可選的。改函數接收個參數前一個值當前值項的索引和數組對象。 數組API(1) 棧方法 (后進先出) 在棧的頂部進行插入和移除操作,使用 push 和 pop 方法結合(會修改原始數組) 在數組末尾插入(push可以添加多項) push var arr=[1,2,3]; var m=arr.push(m); console...

    AbnerMing 評論0 收藏0

發表評論

0條評論

elva

|高級講師

TA的文章

閱讀更多
最新活動
閱讀需要支付1元查看
<