带有条件

时间:2017-08-19 09:58:41

标签: javascript html

我正在从文本文件中读取一些数字。有时会有一个数字0,下面的行输出0,但如果数字为“0”,我不想输出。当数字为“0”时,有没有办法将下面的行改为NOT输出/打印?感谢

document.getElementById('inputText').innerHTML= "(" + parseFloat(output1*2).toFixed(3) + "," +  parseFloat(output2*2).toFixed(3) + ")";

4 个答案:

答案 0 :(得分:1)

您可以创建一个检查每个值并根据它生成结果的函数,如下所示:



var getResult = function (num1, num2) {
  var result1 = num1 ? (parseFloat(num1) * 2).toFixed(3) : "";
  result1 = isNaN(result1) ? "" : result1;
  var result2 = num2 ? (parseFloat(num2) * 2).toFixed(3) : "";
  result2 = isNaN(result2) ? "" : result2;
  var comma = result1 && result2 ? ", " : "";
  return `(${result1}${comma}${result2})`;
};

document.getElementById('result').innerHTML += `5, 0 = ${getResult("5")}<br/>`;
document.getElementById('result').innerHTML += `0, 4 = ${getResult("0", "4")}<br/>`;
document.getElementById('result').innerHTML += `3, 2 = ${getResult("3", "2")}<br/>`;
document.getElementById('result').innerHTML += `3, 2 = ${getResult("three", "15.5")}<br/>`;
&#13;
<div id="result"></div>
&#13;
&#13;
&#13;

编辑:删除了可能的NaN结果。

答案 1 :(得分:0)

您可以使用或运算符替换为0:

parseFloat(output1*2) || ""

或使用三元:

output1? parseFloat(output1*2).toFixed(3) : ""

答案 2 :(得分:0)

使用if语句检查您的号码:

HTML:

Force Left-to-Right

JS:

<p id="inputText">
   0
</p>

https://jsfiddle.net/b5st3h2m/2/

答案 3 :(得分:0)

document.getElementById('inputText')。innerHTML =“(”+((parseFloat(output1 * 2).toFixed(3)+“,”)?parseFloat(1 * 2).toFixed(3):“ “)+((parseFloat(output2 * 2).toFixed(3))?parseFloat(1 * 2).toFixed(3):”“)+”)“;