sameReverse関数


質問する


const sameReverse = num => {}
数値numをパラメータとして渡す場合は、反転した形状がnumと同じかどうかを返します.
num:戻り値:trueまたはfalse(反転した形状がnumと同じかどうか)
例えばnum=123 return false=>反転形状が321であるため
num=1212 return true=>反転形状が1221であるため
num=-121 return false=>反転形状が121であるため-
num=10 return false=>反転した形状が01であるため

どうやって近づくの?


もし「-」の記号があれば、ひっくり返った時と同じではありませんか?すべてfalseです.
まず数字を文字に変換してから、文字を逆さまにします.
文字を反転させるときは、並べ方で一つ一つ入れてみましょう.
そして並べ替えを比較します.

マイコード

const sameReverse = num => {
  let str = String(num);
  
  let split = Array.from(str);
  
  let arr = [];

  for(let i = split.length-1; i>=0; i--){
    arr.push(split[i])}

  if(split == arr){
    return true
  } else {
    return false
    }
}
sameReverse(1221)

テストに合格しなかった.コンソールで撮影した結果、レイアウトは同じでtrueと予想されたが、falseが現れた.比較演算子を使用して配列を比較する場合は、配列の値を比較するのではなく、値を比較するアドレスです.
joinの方法で配列を消して文字にし、Numberの方法で数字にして比較します.結果はtrueでした.

の最後の部分


配列を比較するときは気をつけてください.コンソールを出力してみておかしいと思ったら、それを理解してみましょう.
数字は文字として、文字は配列として、配列は文字として.
柔軟な思考が必要だ.