##お題
連続するアルファベットから抜け落ちている文字を返す。
抜け落ちている文字がなければundefinedの状態で返す。
function missingLetters(str) {
//write your code.
return missing;
}
missingLetters("abce");//d
##出力結果 例
("abcdefghjklmno") // i
("bcd") // undefined
("yz") // undefined
##使ったもの
charCodeAt()
fromCharCode()
map()
split()
##考え方
・引数(str)のアルファベットASCIIコードと比較用ASCIIコードの値を順に比較していく。
比較用ASCIIコード(compare)はstr.charCodeAt(0)で取得する。
引数のアルファベットASCIIコードはstr.split(' ').map()で順に取得する
・値が一致していれば比較用ASCIIコードに1を足していく。
・一致しなければ合わなかった比較用ASCIIコードの数値をfromCharCode(compare)でアルファベットに変換して変数(missing)に入れる。
・全てが一致すればundefinde、不一致があれば変数missingを返しておわり
##コード
function missingLetters(str) {
let compare = str.charCodeAt(0),
missing;
str.split('').map(function(letter,index) {
if (str.charCodeAt(index) == compare) {
++compare;
} else {
missing = String.fromCharCode(compare);
}
});
return missing;
}
missingLetters("abc");//d
###他にもコードが浮かんだ方、コメントお待ちしております。