javascript - 如何计算字符串中的数字

标签 javascript jquery

我有这样的字符串13-2-10-7-3其中数字由 - 分隔.

我想知道计算 sum 的最佳方法是什么? javascript 中字符串中的所有数字?

最佳答案

这是一个用 - 分割字符串的函数。然后遍历所有结果并将它们相加。

function add(string){ 
    return string.split('-').reduce(function(a,b){return+a+(+b); });  
}

这将使用正则表达式从字符串中提取数字。然后它将使用 .reduce() 添加它们。不要太复杂。 +a+(+b) 会将 ab 转换为 JavaScript 数字,然后将它们相加。 +var 将使变量从字符串变为数字。据我所知,这是您可以实现的最短方法。

如果您不支持 .reduce() 函数,请使用应支持每个浏览器的替代代码:

function add(string) {
    var strings = string.split('-'),
        sum = 0,i;
    for (i = 0; i < strings.length; i +=1 ) {
        sum += (+strings[i]);
    }
}

速度:~0.062 秒

Fiddle

关于javascript - 如何计算字符串中的数字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29503603/

相关文章:

javascript - 使用 MomentJs 显示日期时间,无需时区转换

javascript - jQuery - 使用表单元素克隆 <div>,包括它们的值

javascript - Bootstrap 模态框无法打开

javascript - 如何从它自己的实现中引用一个函数?

javascript - YouTube API 和 Websockets 确保两个视频同步(视频 1 在视频 2 缓冲时暂停)

javascript - jQuery 在单选按钮上显示隐藏 div

jquery - 通过函数从这个到那个?

javascript - Jquery对多个ID应用单个函数

javascript - jQuery 不等于条件不工作

javascript - 将字符串拆分为成对数字的数组