Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/90.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 将HTML5数据类型转换为数字_Javascript_Html_Custom Data Attribute - Fatal编程技术网

Javascript 将HTML5数据类型转换为数字

Javascript 将HTML5数据类型转换为数字,javascript,html,custom-data-attribute,Javascript,Html,Custom Data Attribute,背景:我想加减数字。我正在使用HTML数据属性。parseInt和Number并不像我想象的那样工作 <div class="originalNumber" data-original-number="1,000,000">1,000,000</div> <div class="bucket1" data-bucket="100,000">100,000</div> <div class="bucket2" data-bu

背景:我想加减数字。我正在使用HTML数据属性。parseInt和Number并不像我想象的那样工作

   <div class="originalNumber" data-original-number="1,000,000">1,000,000</div>

   <div class="bucket1" data-bucket="100,000">100,000</div>
   <div class="bucket2" data-bucket="200,000">200,000</div>
   <div class="bucket3" data-bucket="300,000">300,000</div>
console.log=1000000

现在我想从中加减。例如,单击bucket1,1000000变为900000 1000000-100000

问题是我无法将字符串转换为数字。我尝试过使用parseInt和Number,但没有效果

返回1

    var getOriginal=Number(getOriginal);
    console.log(getOriginal);
返回楠

我缺少什么?

尝试使用正则表达式:

 var getOriginalNumeric = parseInt(getOriginal.replace(/[^\d\.]/gi, ''));
这将去除除数字和小数以外的任何内容。

尝试使用正则表达式:

 var getOriginalNumeric = parseInt(getOriginal.replace(/[^\d\.]/gi, ''));

这将删除除数字和小数以外的任何内容。

在使用parseInt之前,需要删除包含数字的字符串中的所有逗号


有一些关于最佳方法的信息。

在使用parseInt之前,您需要删除包含数字的字符串中的所有逗号


有一些关于最好的方法的信息。

问题是逗号被解释为十进制符号,这是大多数国家的标准,但美国使用句点作为十进制分隔符

您需要替换逗号的:

getOriginal = parseInt(getOriginal.replace(/,/g, ""), 10);

这里有一个活生生的例子:

问题是逗号被解释为十进制符号,这在大多数国家是标准的,但美国使用句点作为十进制分隔符

您需要替换逗号的:

getOriginal = parseInt(getOriginal.replace(/,/g, ""), 10);
下面是一个活生生的例子: