FreeCodeCamp筆記之:Missing letters

題目

從傳遞進(jìn)來(lái)的字母序列中找到缺失的字母并返回它。
如果所有字母都在序列中,返回 undefined。
如果你被卡住了,記得開(kāi)大招 Read-Search-Ask。嘗試與他人結(jié)伴編程、編寫(xiě)你自己的代碼。
這是一些對(duì)你有幫助的資源:
String.charCodeAt()
String.fromCharCode()

function fearNotLetter(str) {
  return str;
}
fearNotLetter("abce");

思路

  1. 第一反應(yīng)就是要將字母轉(zhuǎn)為數(shù)字,需要用到 charCodeAt();
  2. 然后看最后一位字母代表的數(shù)字減去第一位字母代表的數(shù)字是否和這一串字符的長(zhǎng)度相等;
  3. 如果相等,則說(shuō)明這串字符不缺;如果不相等,則循環(huán)添加字母,這就要用到 fromCharCode() 將數(shù)字轉(zhuǎn)回字母了;

解答

function fearNotLetter(str) {
  if ((str.charCodeAt(str.length-1)-str.charCodeAt(0)) === str.length-1) {
     return undefined;
  }
   for (var i=0;i<=str.length; i++){
     if (str.charCodeAt(i+1)-str.charCodeAt(i) !=1){
        return String.fromCharCode(str.charCodeAt(i)+1);
     }
   }
}
fearNotLetter("abce");
  • 這里我一開(kāi)始寫(xiě)錯(cuò)了一個(gè)地方,就是 java script (str.charCodeAt(str.length-1)-str.charCodeAt(0)) === str.length-1 這一句;一開(kāi)始的時(shí)候沒(méi)有 -1 ,后來(lái)報(bào)錯(cuò);
  • 后來(lái)才坑爹的記起來(lái),從0開(kāi)始才是第一位,所以字符串長(zhǎng)度需要 -1 才是代表字符串的最后一位;
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 第5章 引用類(lèi)型(返回首頁(yè)) 本章內(nèi)容 使用對(duì)象 創(chuàng)建并操作數(shù)組 理解基本的JavaScript類(lèi)型 使用基本類(lèi)型...
    大學(xué)一百閱讀 3,684評(píng)論 0 4
  • 1、charCodeAt方法返回一個(gè)整數(shù),代表指定位置字符的Unicode編碼。 strObj.charCodeA...
    可樂(lè)可樂(lè)請(qǐng)加冰閱讀 506評(píng)論 0 0
  • 去空格或者其他字符串 trim() :去除首尾空白字符 空白字符包括:\t,\n,"",\0,\xoB rtrim...
    Demoer閱讀 446評(píng)論 0 2
  • 我今天看見(jiàn)一個(gè)人,她有著快及腰的黑發(fā),穿著黑色的長(zhǎng)款羽絨衣。在地鐵上,她站在我前面,一手拉著扶桿,有小孩上來(lái)的時(shí)候...
    李氏喜樂(lè)閱讀 535評(píng)論 0 0
  • 晚上豆問(wèn)我爸爸回來(lái)嗎?我說(shuō),來(lái)的,已經(jīng)在路上了,不過(guò)等爸爸回來(lái)也行你已經(jīng)睡著了。(周六爸爸答應(yīng)周日帶豆去玩,可臨...
    豆豆媽1234閱讀 208評(píng)論 0 0

友情鏈接更多精彩內(nèi)容