Reasonml을 배우고 있는데 표준 라이브러리에서 Bucklescript Js 모듈과 같은 기능을 찾을 수 없습니다. 원시 자바 스크립트을 사용하는 것보다 더 좋은 옵션이 있습니까?Reasonml/Bucklescript를 사용하여 문자열을 정수로 파싱하려면 어떻게해야합니까?
는 지금은이 기능을 달성하고 있습니다 :
let parseint: string => int = [%raw {| x => parseInt(x, 10) |}];
Reasonml을 배우고 있는데 표준 라이브러리에서 Bucklescript Js 모듈과 같은 기능을 찾을 수 없습니다. 원시 자바 스크립트을 사용하는 것보다 더 좋은 옵션이 있습니까?Reasonml/Bucklescript를 사용하여 문자열을 정수로 파싱하려면 어떻게해야합니까?
는 지금은이 기능을 달성하고 있습니다 :
let parseint: string => int = [%raw {| x => parseInt(x, 10) |}];
int_of_string
(도 float_of_string
/bool_of_string
가) 당신이 필요로해야한다. (당신이 reason-tools 브라우저 확장을 설치 한 경우 OCaml의에서이를 자동 변환 당신을 위해 구문을 추론 할 수 있도록 해당 사이트가 당신을 위해 잘 작동합니다)
그것은 표준 lib에, 당신은
그것을 https://caml.inria.fr/pub/docs/manual-ocaml/libref/Pervasives.html를 검색 할 수 있어야한다문자열이 해당 유형에 유효하지 않은 경우 모든 함수가 예외를 throw합니다 (각 구문의 작동 방식과 각 문자열에 대한 예상 내용을 보려면 링크 참조).
@glennsl은 버클 스크립트가 4.02.3
보다 최신 버전의 OCaml 컴파일러를 따라 잡을 때보다 안전한 _opt
변종을 사용할 수 있습니다. int_of_string_opt
은 또는 None
을 반환합니다. 대신 입력을 신뢰하는 정도, 예외를 피하고자하는 양, 잘못된 입력을 처리하는 방법에 따라 다릅니다 (예외적이며 프로그램/스택을 죽여야합니다. 정상이며 로컬에서 처리해야합니까?).
여전히 4.02.3 컴파일러를 사용하기 때문에'_opt' 변형은 BuckleScipt에서 사용할 수 없습니다. – glennsl
이것은 내가 찾고 있었던 것이다. BuckleScript는 문자열 ('Js.Float.fromString')에서 부동 소수점을 구문 분석하는 함수를 가지고 있기 때문에 이상합니다. 그러나 정수로 수행 할 필요가 없습니다. – gabrielperales