javascript - 使用nodeJS添加数字时出现奇怪的错误

标签 javascript node.js

所以这很可能很简单,但我花了一整天的时间尝试不同的方法并在谷歌上搜索解决方案。

出于某种原因,当我将 + 与 2 个数字一起使用而不是将数字加在一起时, Node 正在连接数字。

  Company.findById(req.id, (err, doc) => {

      if (err) {
          callback(err, err);
      } else {

          var i = doc.TotalGranted; // i.e number value of 200
          var e = doc.TotalAvailable; // i.e number value of 200

          var newTotalgranted = i + req.newNumber; // i.e number value of 100
          var newAvailable = e - req.newNumber; // i.e number value of 100

          doc.TotalGranted= newTotalgranted;
          doc.TotalAvailable= newAvailable;

          doc.save((err, doc) => {
              if (err) {
                  callback(err, err);
              }
              callback(null, 'success');
          });
      }
  });

现在不再是totalgranted = 300,而是等于200,100

如果这里有帮助的话是从 mongo 返回的文档的相关部分,这些不包含在数组中

  TotalAvailable: 200,
  TotalGranted: 200,



newNumber: '100',

新数字是一个字符串,但它实际上也来自返回的文档。所以也许我需要从字符串转换 newNumber 我已经尝试过但无法解决。

最佳答案

尝试,

Company.findById(req.id, (err, doc) => {

  if (err) {
      callback(err, err);
  } else {

      var i = doc.TotalGranted; // i.e number value of 200
      var e = doc.TotalAvailable; // i.e number value of 200

      var newTotalgranted = (i + (req.newNumber * 1)); // i.e number value of 100
      var newAvailable = (e - (req.newNumber * 1); // i.e number value of 100

      doc.TotalGranted= newTotalgranted;
      doc.TotalAvailable= newAvailable;

      doc.save((err, doc) => {
          if (err) {
              callback(err, err);
          }
          callback(null, 'success');
      });
  }
});

关于javascript - 使用nodeJS添加数字时出现奇怪的错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48679608/

相关文章:

javascript - Extjs:通过构造函数或 initComponent 扩展类?

css - Svelte/Sapper构建-似乎在构建后仍然存在旧CSS?

html - Nodejs 在没有 CSS 的情况下加载我的 HTML

node.js - Node.js 如何选择随机端口?

node.js - Grunt 执行多次,创建无限循环

javascript - AngularJS - 尝试访问数组以返回警报时出现问题

javascript - 使用 javascript 处理动态信息图的好方法?

javascript - 通过javascript在window.selection()中查找html标签

node.js - 咕噜声不工作 : -bash: exec: grunt: not found

javascript - 如何使用 Ruby 查找 DOM 元素是否具有事件监听器