ローマ数字を10進数に変換するためのJavaScriptアルゴリズム
ローマ数字の文字列を受け取り、それに相当する10進数(基数10)を返す関数を作成する必要があります。したがって、この関数のコードを書いてみましょう-
例
const romanToInt = (s) => { const legend = "IVXLCDM"; const l=[1,5,10,50,100,500,1000]; let sum=0; while(s){ if(!!s[1] && legend.indexOf(s[0]) < legend.indexOf(s[1])){ sum += (l[legend.indexOf(s[1])] - l[legend.indexOf(s[0])]); s = s.substring(2, s.length); } else { sum += l[legend.indexOf(s[0])]; s = s.substring(1, s.length); } } return sum; }; console.log(romanToInt('CLXXVIII')); console.log(romanToInt('LXXXIX')); console.log(romanToInt('LV')); console.log(romanToInt('MDLV'));
出力
コンソールの出力は-
になります178 89 55 1555
-
バニラJavaScriptを使用して文字列を数値に変換する
JavaScriptで使用可能なparseInt関数には、次のシグネチャがあります- 構文 parseInt(string, radix); パラメータが次の場合- 文字列 −解析する値。この引数が文字列でない場合は、ToStringメソッドを使用して引数に変換されます。この引数の先頭の空白は無視されます。 基数 −文字列の基数(数式の基数)を表す2〜36の整数。 したがって、このメソッドを使用して、文字列と基数を渡し、基数が2から36までの任意の数値を整数に変換できます。たとえば、 例 console.log(parseInt("100", 10)) consol
-
JavaScriptで10進数を検証するにはどうすればよいですか?
以下は、JavaScriptで10進数を検証するためのコードです- 例 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <title>Document</title> <style>