在 JavaScript 中从字符串中删除逗号
本教程将解释如何使用 replace()
和 split()
方法从字符串中删除逗号。之后,我们将使用 parseFloat()
将字符串转换为浮点数,从而生成在数学加法期间不会连接的组合字符串。
使用 JavaScript 中的 replace()
方法删除逗号
replace()
方法接受正则表达式模式和替换字符串。它将使用正则表达式模式在字符串中查找逗号,用替换字符串替换逗号。
我们的目标是消除逗号以清空替换字符串。
let string_one = '2,526.23';
let string_two = '33,999.21';
let replaced_string_one = string_one.replace(/,/g, '');
let replaced_string_two = string_two.replace(/,/g, '');
let add_replaced_string =
parseFloat(replaced_string_one) + parseFloat(replaced_string_two);
console.log('Replaced string_one: ', replaced_string_one);
console.log('Replaced string_two: ', replaced_string_two);
console.log('Added replaced string: ', add_replaced_string);
输出:
Replaced string_one: 2526.23
Replaced string_two: 33999.21
Added replaced string: 36525.44
在上面的代码中,我们将两个字符串保存在两个变量中。我们想在字符串中添加数字,所以我们用 replace()
方法替换逗号。
替换后,我们使用 parseFloat()
函数将字符串转换为浮点数,以保留字符串中的任何小数点。
使用 JavaScript 中的 split()
方法删除逗号
split
方法将字符串中的逗号作为参数,并返回一个数组。该数组包含的元素是在 split
找到逗号的每个点处的字符串块。
但是,我们需要一个字符串,而不是数组。我们将使用 join()
方法将数组转换为字符串。
一旦数组元素是一个字符串,你可以在添加它们之前对其使用 parseFloat()
函数。
let first_string = '12,222,526.99';
let second_string = '2,821.21';
let replaced_first_string = first_string.split(',').join('');
let replaced_second_string = second_string.split(',').join('');
let add_replaced_string =
parseFloat(replaced_first_string) + parseFloat(replaced_second_string);
console.log('Replaced first_string: ', replaced_first_string);
console.log('Replaced second_string: ', replaced_second_string);
console.log('Added replaced string: ', add_replaced_string);
输出:
Replaced first_string: 12222526.99
Replaced second_string: 2821.21
Added replaced string: 12225348.200000001
使用 Lodash Replace
方法删除逗号
Lodash 是一个 JavaScript 库;它有一个接受三个参数的 replace()
方法。这些参数是 string
、pattern
和 replacement
。
string
应该包含你要替换的内容,pattern
应该匹配你要替换的字符串部分。最后,replacement
根据模式被替换到字符串中。
在下面的代码中,我们使用了 Lodash replace()
方法来替换字符串中的逗号。之后,我们在添加之前对结果字符串使用 parseFloat()
函数。
<body>
<script
src="https://cdnjs.cloudflare.com/ajax/libs/lodash.js/4.17.21/lodash.min.js"
integrity="sha512-WFN04846sdKMIP5LKNphMaWzU7YpMyCU245etK3g/2ARYbPK9Ub18eG+ljU96qKRCWh+quCY7yefSmlkQw1ANQ==" crossorigin="anonymous"
referrerpolicy="no-referrer"
>
</script>
<script type="text/javascript">
let lodash = _;
let string_one = '44,321.12';
let string_two = '1,245.01';
let replaced_string_one = _.replace(string_one, ',', '');
let replaced_string_two = _.replace(string_two, ',', '');
let add_replaced_string = parseFloat(replaced_string_one) + parseFloat(replaced_string_two);
console.log("Replaced string_one: ", replaced_string_one);
console.log("Replaced string_two: ", replaced_string_two);
console.log("Added replaced string: ", add_replaced_string);
</script>
</body>
输出:
Replaced string_one: 44321.12
Replaced string_two: 1245.01
Added replaced string: 45566.130000000005
Habdul Hazeez is a technical writer with amazing research skills. He can connect the dots, and make sense of data that are scattered across different media.
LinkedIn