亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

將數組中的第二項大寫

將數組中的第二項大寫

慕姐8265434 2023-07-14 09:36:31
我想將數組中的第二個單詞大寫,我根據索引號嘗試了它,但是我得到了 undefined for array[i+1]。還有別的辦法嗎?const filteredSegments = segments.map((segment, i, array) => {    const hide = i === 0 && new RegExp(namePatterns.join('|'), 'i').test(segment.words)    const next = array[i + 1]    if (hide && next) { next.words.toUpperCase() }    return { ...segment, words: hide ? segment.words.replace(/./g, '\u200c') : segment.words }})
查看完整描述

3 回答

?
慕村9548890

TA貢獻1884條經驗 獲得超4個贊

只是第二項嗎?


function capitalizeSecondItem(arr) {

  if (arr.length > 1) {

    arr[1] = arr[1].charAt(0).toUpperCase() + arr[1].slice(1);

  }


  return arr;

}


console.log(capitalizeSecondItem(['hello', 'world']));

console.log(capitalizeSecondItem(['foo']));

console.log(capitalizeSecondItem([]));

console.log(capitalizeSecondItem(['the', 'quick', 'brown', 'fox', 'jumps', 'over', 'the', 'lazy', 'dog']));

查看完整回答
反對 回復 2023-07-14
?
白衣染霜花

TA貢獻1796條經驗 獲得超10個贊

在循環中計算偶數和奇數并改變每秒記錄


var arr = ['lorem', 'ipsum', 'dolor', 'sit', 'amet', 'consectetur', 'adipisicing', 'elit', 'esse', 'voluptatibus', 'illum', 'fuga', 'quae', 'consequatur', 'pariatur']



for (var i = 0; i < arr.length; i++) {

    if (i % 2 !== 0) {

        arr[i] = arr[i].charAt(0).toUpperCase() + arr[i].slice(1);

    }

}


console.log(arr);


第二個選項: 解決該任務的另一種方法是我們通過兩個值循環數組


var arr = ['lorem', 'ipsum', 'dolor', 'sit', 'amet', 'consectetur', 'adipisicing', 'elit', 'esse', 'voluptatibus', 'illum', 'fuga', 'quae', 'consequatur', 'pariatur']


for (var i = 1; i < arr.length;  i += 2) {

    arr[i] = arr[i].charAt(0).toUpperCase() + arr[i].slice(1);

}


console.log(arr);


回答帖子下面評論中的問題:


(“如果第一個單詞是空字符串,我只想將第二個單詞大寫”)


該代碼檢查數組中的第一個字符串是否為空,如果條件為真,則檢查是否存在第二個字符串...它執行第二個字符串的任務。


如果有第一個字符串,則執行第一個 -> 的任務(如果不需要,只需刪除else)


var arr = ['', 'ipsum', 'dolor', 'sit', 'amet', 'consectetur', 'adipisicing', 'elit', 'esse', 'voluptatibus', 'illum', 'fuga', 'quae', 'consequatur', 'pariatur']



if (arr[0].length === 0 && arr.length > 1) {

    arr[1] = arr[1].charAt(0).toUpperCase() + arr[1].slice(1);

} else {

    arr[0] = arr[0].charAt(0).toUpperCase() + arr[0].slice(1);

}



console.log(arr);


查看完整回答
反對 回復 2023-07-14
?
慕桂英3389331

TA貢獻2036條經驗 獲得超8個贊

僅將第二個單詞大寫,為此,我們不必迭代數組,只需檢查數組是否大于或等于長度 2,如果是,則只需將第二個單詞大寫并保持剩余元素不變,這樣會花費更多時間也很高效,因為我們只需在某個索引中執行查找,而不是迭代整個數組:


let segment = ["", "to", "capitalize", "the","second","word","in","the","array"];


if(segment.length >=2){

   segment[1] = segment[1][0].toUpperCase() + segment[1].substr(1);

}


console.log(segment );


如果第一個元素為空字符串,則將第二個單詞大寫:


let segment = [

  "",

  "want",

  "to",

  "capitalize",

  "the",

  "second",

  "word",

  "in",

  "t",

  "array",

];


let sentense = segment.join(" ").trim();

sentense = sentense[0].toUpperCase() + sentense.substr(1);


console.log(sentense.split(" "));


查看完整回答
反對 回復 2023-07-14
  • 3 回答
  • 0 關注
  • 155 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號