엔지니어링 시뮬레이션을위한 웹 기반 프런트 엔드를 작성하고 있습니다. 백엔드는 미터 또는 와트와 같은 접두어가없는 SI 단위의 값만 허용합니다. 그러나 사용자가 원하는 단위로 값을 입력 할 수 있도록하는 것이 바람직합니다. 당신이 거리를 입력하는 데 필요한 경우, 예를 들어, 사용자가 입력 할 수자바 스크립트 엔지니어링 입력 라이브러리
15 inches
3.1 meter
1.4 km
하지만 값을 같은 :
12 seconds
5 pounds
147 watts
이 거부 될 것이다. 먼저 js-quantities을 사용해 보았지만 가장 직관적 인 방식으로 파생 된 단위를 구문 분석하지 않습니다. 곱해진 단위 사이에 공간이 있어야합니다. 예를 들어, 앰프 시간 단위로 요금을 입력하려면 100 Ah
은 유효하지 않지만 100 A h
을 사용할 수 있습니다. 또한 js 수량은 토크 또는 온도 단위를 지원하지 않습니다 (예 : 온도차 만 섭씨로 화씨를 변환 할 수 없습니다).
그런 다음 Google 계산기 API를 사용하여 단위 변환을 시도했지만 적은 수의 하드 구문 분석 결과 :
변환 미터
요청에 5 나노 미터 :
http://www.google.com/ig/calculator?hl=en&q=5%20nm=?m
응답 :
{lhs: "5 nanometers",rhs: "5.0 \x26#215; 10\x3csup\x3e-9\x3c/sup\x3e meters",error: "",icc: false}
언급 한 전환 수가 * Google 계산에 포함되지 않아도됩니다. 그것들은 단지 정적이어서 브라우저에서해야합니다. 이 질문에 대한 답변과 같은 것 : http://stackoverflow.com/questions/865590/unit-of-measure-conversion-library – olan
예, 브라우저에서 완료하는 것이 좋습니다. 이런 식으로 유닛을 파싱 할 수있는 라이브러리 또는 서비스를 찾고 있습니다. 내가 링크 된 질문을 보았지만 실제 구문 분석을 처리하지 못합니다. 또한 유효한 단위의 철저한 목록을 쉽게 만들 수 있는지 확신 할 수 없습니다. – charliehorse55
안녕하세요 @ charliehorse55. 저는 js- 수량의 저자입니다. 가능하다면 문제를 해결하게되어 기쁩니다 (특히 Ah 파싱). 그럼에도 불구하고 tempC를 tempC 변환 및 토크 수량으로 시도했지만 예상대로 작동합니다 (새로운 Qty ('100 tempF'). ('tempC')), 새로운 Qty ('N * m')). – gentooboontoo