为什么NodeJS不计算值?

时间:2019-03-26 03:38:35

标签: node.js

我正在尝试使此简单的控制台Node.js计算器正常工作,但它不会返回任何值。对我在做什么错有任何见解?

    console.log(process.argv);
var x = 0;
if (process.argv[4]==="+"||process.argv[4]==="plus"){x=parseInt(process.argv[3])+parseInt(process.argv[5])}
if (process.argv[4]==="-"||process.argv[4]==="minus"){x=parseInt(process.argv[3])-parseInt(process.argv[5])}
if (process.argv[4]==="*"||process.argv[4]==="times"){x=parseInt(process.argv[3])*parseInt(process.argv[5])}
if (process.argv[4]==="/"||process.argv[4]==="over"){x=parseInt(process.argv[3])/parseInt(process.argv[5])}
console.log(x);

1 个答案:

答案 0 :(得分:1)

Javascript上的数组索引从0开始,而不是1。另外,最好处理被零除的条件。

console.log(process.argv);
var x = 0;
if (process.argv[3] === "+" || process.argv[3] === "plus") {
  x = parseInt(process.argv[2]) + parseInt(process.argv[4]);
}
if (process.argv[3] === "-" || process.argv[3] === "minus") {
  x = parseInt(process.argv[2]) - parseInt(process.argv[4]);
}
if (process.argv[3] === "*" || process.argv[3] === "times") {
  x = parseInt(process.argv[2]) * parseInt(process.argv[4]);
}
if (process.argv[3] === "/" || process.argv[3] === "over") {
  x = parseInt(process.argv[2]) / parseInt(process.argv[4]);
}
console.log(x);