New Case Study:See how Anthropic automated 95% of dependency reviews with Socket.Learn More
Socket
Sign inDemoInstall
Socket

chinese-numbers-converter

Package Overview
Dependencies
Maintainers
1
Versions
17
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

chinese-numbers-converter - npm Package Compare versions

Comparing version 2.0.1 to 2.0.2

41

chinese-numbers.js

@@ -76,6 +76,4 @@ /**

'萬': '*10000',
'萬': '*10000',
'万': '*10000',
'億': '*100000000',
'億': '*100000000',
'亿': '*100000000',

@@ -105,3 +103,3 @@ };

if (str === null || str === undefined || str === '') {
throw 'Empty strings cannot be converted.';
throw new Error('Empty strings cannot be converted.');
}

@@ -123,3 +121,3 @@

}
// Now parse the actual Chinese, character by character:

@@ -163,3 +161,3 @@ var len = str.length;

var numbersSoFar = 0;
pairs.forEach(function (pair) {

@@ -190,3 +188,3 @@ numbersSoFar += pair[0] * pair[1];

// If number ends in 1-9, e.g. 二十二, we have one number left behind -
// If number ends in 1-9, e.g. 二十二, we have one number left behind -
// add it too and multiply by 1:

@@ -221,3 +219,3 @@ if (currentPair.length === 1) {

* @returns {boolean} True if the `character` is a Chinese or Arabic number
* or a character like "comma" and "space", which should not delimit two
* or a character like "comma" and "space", which should not delimit two
* numbers; rather, they mean that the number may continue. E.g. "6,000" or

@@ -229,3 +227,3 @@ * "6 000".

if (character === null || character === undefined || character.length !== 1) {
throw 'isNumberOrSpace() must receive exactly one character for checking.';
throw new Error('isNumberOrSpace() must receive exactly one character for checking.');
}

@@ -254,3 +252,3 @@

if (character === null || character === undefined || character.toString().length !== 1) {
throw 'Function isChineseNumber expects exactly one character.';
throw new Error('Function isChineseNumber expects exactly one character.');
}

@@ -261,3 +259,2 @@

/**

@@ -270,3 +267,3 @@ * Checks whether a character is an Arabic number [0-9] and not a Chinese

if (character === null || character === undefined || character.toString().length !== 1) {
throw 'Function isArabicNumber expects exactly one character.';
throw new Error('Function isArabicNumber expects exactly one character.');
}

@@ -285,3 +282,3 @@

if (character === null || character === undefined || character.toString().length !== 1) {
throw 'Function isCommaOrSpace expects exactly one character.';
throw new Error('Function isCommaOrSpace expects exactly one character.');
}

@@ -327,3 +324,3 @@

// Loop over each character in the string and:
// Loop over each character in the string and:
// - if it's a normal character, just keep looping and adding characters to

@@ -334,2 +331,3 @@ // the translated string.

// Arabic number and place it back into the translated string.
var clearChineseNumber;
this.source.split('').forEach(function (character) {

@@ -348,3 +346,3 @@ if (ChineseNumber.isNumberOrSpace(character)) {

// Add a space, otherwise 1000萬800呎 will become 10000000800呎
translated += ' ';
translated += ' ';
} else {

@@ -376,5 +374,5 @@ // If `minimumCharactersInNumber` is set, do not translate short

// Cannot be false, otherwise `if (previousCharacterIsNumber) {`
// Cannot be false, otherwise `if (previousCharacterIsNumber) {`
// below will fail for numbers that end with space:
previousCharacterIsNumber = true;
previousCharacterIsNumber = true;
previousCharacterIsChineseNumber = false;

@@ -393,4 +391,4 @@ } else {

clearChineseNumber = chineseNumber.replace(/[,\s]/g, '');
if (clearChineseNumber === '' && chineseNumber.length === 1) {
// If the 'number' we assembled is actually something like comma,
if (clearChineseNumber === '' && chineseNumber.length === 1) {
// If the 'number' we assembled is actually something like comma,
// space, or multiple commas and spaces, and occurs at the beginning:

@@ -441,7 +439,5 @@ translated += chineseNumber;

characters.forEach(function (character, i) {
if (i === 0) {
// For the first character, we don't have a previous character yet, so
// For the first character, we don't have a previous character yet, so
// just skip it:

@@ -475,4 +471,3 @@ result += character;

result += character + missingMultiplier;
}
else {
} else {
result += character;

@@ -479,0 +474,0 @@ }

{
"name": "chinese-numbers-converter",
"version": "2.0.1",
"version": "2.0.2",
"description": "Converts Chinese numerals in a string into Arabic numerals.",

@@ -5,0 +5,0 @@ "main": "chinese-numbers.js",

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc