私はReasonmlを学んでいます。標準ライブラリでは、Bucklescript Jsモジュールの機能を見つけることができません。 生のjavascriptを使用するよりも良い選択肢はありますか?Reasonml/Bucklescriptで文字列を整数に解析するにはどうしたらいいですか?
は、今のところ私はこの機能でそれを実現しています:
let parseint: string => int = [%raw {| x => parseInt(x, 10) |}];
私はReasonmlを学んでいます。標準ライブラリでは、Bucklescript Jsモジュールの機能を見つけることができません。 生のjavascriptを使用するよりも良い選択肢はありますか?Reasonml/Bucklescriptで文字列を整数に解析するにはどうしたらいいですか?
は、今のところ私はこの機能でそれを実現しています:
let parseint: string => int = [%raw {| x => parseInt(x, 10) |}];
int_of_string
(ともfloat_of_string
/bool_of_string
)はあなたが必要なものを行う必要があります。標準libに、あなたはそれhttps://caml.inria.fr/pub/docs/manual-ocaml/libref/Pervasives.htmlを検索することができるはずだ
(あなたはあなたのための構文を推論するのOCamlからの自動変換、それように設置reason-toolsブラウザ拡張機能を持っている場合、そのサイトがあなたのために良い仕事します)
文字列がその型に対して有効でない場合、これらの関数はすべて例外をスローします(リンクを参照してそれぞれの仕組みや各文字列が何を期待しているかを参照してください)。
@glennslはBucklescriptがより新しいバージョンのOCamlコンパイラ(4.02.3
)に追いつくときに、より安全な_opt
の亜種を使用することをお勧めします。 int_of_string_opt
は、入力をどのくらい信頼するか、例外を回避したいか、不正な入力をどのように処理したいかによって、Some(number)
またはNone
を返します(これは例外的なので、プログラム/スタックを殺すはずです。ローカルで処理する必要がありますか?)。
なお、 '_opt'バリアントはBuckleSciptではまだ4.02.3コンパイラを使用しているので利用できません。 – glennsl
これは私が探していたものです。 BuckleScriptは文字列( 'Js.Float.fromString')から浮動小数点数を解析する関数を持っていますが、これは整数で行う必要はありません。 – gabrielperales