Algorithm) Codekata_Day 2
❓ Question
整数値をパラメータとして関数を受信し、それを反転して返します.
ex) 1234 => 4321 / -1234 => -4321 / 1230 => 321
📝 My Solution
const reverse = x => { // 1
const changeString = x.toString(); // 2
const arrayString = changeString.split(''); // 3
if (x < 0) {
arrayString.shift('-') // 7
const reverseString = arrayString.reverse(); // 4
const joinString = reverseString.join(''); // 5
const changeNumber = Number(joinString) * -1 // 8
return changeNumber;
} else {
const reverseString = arrayString.reverse(); // 4
const joinString = reverseString.join(''); // 5
const changeNumber = Number(joinString); // 6
return changeNumber;
}
}
▪️ Solution review
それぞれの過程を分けて、どのように動作を完成させるかを考えます.
長いハーモニーが出てきて、
受信パラメータが負の場合を考慮すると、同じコードが繰り返される可能性があります.
最終的に正しい結果値が得られた.
📝 Another Solution
const reverse = x => {
let reverseNum = parseInt(x.toString().split('').reverse().join(''))*Math.sign(x);
return reverseNum;
}
▪️ Solution review
1つのパラメータを使用して複数のメソッドを適用する方法:
知らないところもありますが、この方法で書けば
コードの長さを短くしたり、迅速な結果値を得たりすることができます.
次はコードアプリケーションの順序です.
x.toString()
:xを文字に変更.split('')
:配列に一字ずつ挿入.reverse()
:逆さまに並ぶアルファベット順.join('')
:配列中のすべての文字を一体にするparseInt()
:解析文字で特定の真数値の整数を返すMath.sign(x)
:xを返す記号(表裏+1/負裏-1)parseInt()
の場合、ある文の特定の真数値を返す整数を表します.デフォルト値は10進数文字ではないので、ハイブリッド文字の文といえば、
あなたが望んでいる本当の数値を表示したほうがいいです.
Reference
この問題について(Algorithm) Codekata_Day 2), 我々は、より多くの情報をここで見つけました https://velog.io/@sstaar91/Algorithm-CodekataDay-2テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol