1.0.5 • Published 2 years ago

strnum v1.0.5

Weekly downloads
-
License
MIT
Repository
github
Last release
2 years ago

strnum

Parse string into Number based on configuration

npm install strnum
const toNumber = require("strnum");

toNumber(undefined) // undefined
toNumber(null)) //null
toNumber("")) // ""
toNumber("string"); //"string")
toNumber("12,12"); //"12,12")
toNumber("12 12"); //"12 12")
toNumber("12-12"); //"12-12")
toNumber("12.12.12"); //"12.12.12")
toNumber("0x2f"); //47)
toNumber("-0x2f"); //-47)
toNumber("0x2f", { hex :  true}); //47)
toNumber("-0x2f", { hex :  true}); //-47)
toNumber("0x2f", { hex :  false}); //"0x2f")
toNumber("-0x2f", { hex :  false}); //"-0x2f")
toNumber("06"); //6)
toNumber("06", { leadingZeros :  true}); //6)
toNumber("06", { leadingZeros :  false}); //"06")

toNumber("006"); //6)
toNumber("006", { leadingZeros :  true}); //6)
toNumber("006", { leadingZeros :  false}); //"006")
toNumber("0.0"); //0)
toNumber("00.00"); //0)
toNumber("0.06"); //0.06)
toNumber("00.6"); //0.6)
toNumber(".006"); //0.006)
toNumber("6.0"); //6)
toNumber("06.0"); //6)

toNumber("0.0",  { leadingZeros :  false}); //0)
toNumber("00.00",  { leadingZeros :  false}); //"00.00")
toNumber("0.06",  { leadingZeros :  false}); //0.06)
toNumber("00.6",  { leadingZeros :  false}); //"00.6")
toNumber(".006", { leadingZeros :  false}); //0.006)
toNumber("6.0"  ,  { leadingZeros :  false}); //6)
toNumber("06.0"  ,  { leadingZeros :  false}); //"06.0")
toNumber("-06"); //-6)
toNumber("-06", { leadingZeros :  true}); //-6)
toNumber("-06", { leadingZeros :  false}); //"-06")

toNumber("-0.0"); //-0)
toNumber("-00.00"); //-0)
toNumber("-0.06"); //-0.06)
toNumber("-00.6"); //-0.6)
toNumber("-.006"); //-0.006)
toNumber("-6.0"); //-6)
toNumber("-06.0"); //-6)

toNumber("-0.0"   ,  { leadingZeros :  false}); //-0)
toNumber("-00.00",  { leadingZeros :  false}); //"-00.00")
toNumber("-0.06",  { leadingZeros :  false}); //-0.06)
toNumber("-00.6",  { leadingZeros :  false}); //"-00.6")
toNumber("-.006",  {leadingZeros :  false}); //-0.006)
toNumber("-6.0"  ,  { leadingZeros :  false}); //-6)
toNumber("-06.0"  ,  { leadingZeros :  false}); //"-06.0")
toNumber("420926189200190257681175017717")  ; //4.209261892001902e+29)
toNumber("000000000000000000000000017717"  ,  { leadingZeros :  false}); //"000000000000000000000000017717")
toNumber("000000000000000000000000017717"  ,  { leadingZeros :  true}); //17717)
toNumber("01.0e2"  ,  { leadingZeros :  false}); //"01.0e2")
toNumber("-01.0e2"  ,  { leadingZeros :  false}); //"-01.0e2")
toNumber("01.0e2") ; //100)
toNumber("-01.0e2") ; //-100)
toNumber("1.0e2") ; //100)

toNumber("-1.0e2") ; //-100)
toNumber("1.0e-2"); //0.01)

toNumber("+1212121212"); // 1212121212
toNumber("+1212121212", { skipLike: /\+[0-9]{10}/} )); //"+1212121212"

Supported Options

hex :  true, //when hexadecimal string should be parsed
leadingZeros: true, //when number with leading zeros like 08 should be parsed. 0.0 is not impacted
eNotation: true //when number with eNotation or number parsed in eNotation should be considered
easy-select-rnunblock-block-save-variableshexa-node-common@infinitebrahmanuniverse/nolb-strnluminos-ui-core@everything-registry/sub-chunk-2837jawwy-sdkjawwy_gamification_releasereact-native-sphereuisphereuijawwy_libraryreact-native-credit-card-pkgreact-native-jawwy_samplejeuxuijordy-frijters-test-libgriffin-ui-library@assystant/firebase@blusalt-sdk/react-native-blusalt-document-verification@brantalikp/rn-resize@aysea/react-native-ui-library@cs6/react-native-test-native-view-library@darren-valent/cdk-ec2-key-pair@extrieve_technologies/quickcapture_react_native@footage.one/fast-xml-parser@fintalk.ai/dynamodb-wrapper@lehuyaa/my-assetsjawwy_library_newjawy_library_v1gamification-jawwy-libraryframework_test_library_sixdee_new_jawwyreact-native-experts-sdktest_lib_module_aarframework_test_library_sixdeeframework_test_library_sixdee_newframework_test_library_sixdee_new_newfmslfast-xml-parser-source-locationfast-xml-parserfawaterak-online-paymentfawatrak-online-paymentfluent.adflow.reactnativesdkfluent.adflow.reactnativesdk-alphagamification-integration-newgaurav-react-native-loopgenz-native-elementsnative-modal-damage-vehiclenew-awesome-4321pnm-yph-react-native-custom-componentsmeu-xml-parserquickcapture_react_nativereact-native-custom-image-carouselreact-native-ctp-odpreact-native-dimensions-layoutreact-native-expo-read-sms-ts-kfreact-native-ghn-ekycreact-native-fedlight-dsmreact-native-file-logger-forkedreact-native-auth-service-clientreact-native-basic-appreact-native-basic-screenreact-native-animate-textreact-native-android-video-player-viewreact-native-awesome-module-latestreact-native-awesome-android-123react-native-awesome-android-123-zeotapreact-native-bleccs-componentsreact-native-bluetooth-device-detectreact-native-build-vesion-getterreact-native-bridge-packagereact-native-chenaarreact-native-conekta-card-tokenizerreact-native-components-designrn-agora-ios-mreat-native-multiplierkprreact_native_pandey_marqueereactnativelyreact-native-rabbitmq-allreact-native-return-usb-datareact-native-responsive-helperreact-native-priya-demo-buttonreact-native-recent-framework-updatereact-native-scroll-tab-to-indexreact-native-rn-appreact-native-rn-icons-libraryreact-native-rom-componentsreact-native-rtn-ips-poslin-testreact-native-sandycomponentreact-native-pool-corereact-native-progress-arrowreact-native-login-demo-testreact-native-manh-testreact-native-manual-ios-sdkreact-native-nice-learningreact-native-mun-kitreact-native-multiplier-altroncosoreact-native-multiplyreact-native-multiply-componentreact-native-multiselectorreact-native-nativewindreact-native-onramp
1.0.5

2 years ago

1.0.4

3 years ago

1.0.2

3 years ago

1.0.3

3 years ago

1.0.1

3 years ago

1.0.0

7 years ago