我一直在研究这个小片段:
var a;
var b;
var c;
function generateResult() {
// Custom variables
var a = parseInt(document.getElementById("firstNumber").value);
var b = document.getElementById("operator").value;
var c = parseInt(document.getElementById("secondNumber").value);
console.log(a);
console.log(b);
console.log(c);
var calc = function(a, b, c) {
var result;
if (b == "+") {
console.log("Now in sum");
result = a + c;
return result;
}
else if (b == "-") {
console.log("Now in sub");
result = a - c;
return result;
}
else if (b == "/") {
console.log("Now in div");
result = a / c;
return result;
}
else if (b == "*") {
console.log("Now in tim");
result = a * c;
return result;
}
}
document.getElementById("result").innerHTML = (calc(a, b, c));
}
<!DOCTYPE html>
<html lang="en-US">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>Test</title>
</head>
<body>
<form>
<h1>Calculator (basic)</h1><br><br>
First input:<br>
<input type="number" id="firstNumber"><br><br>
<select id="operator">
<option id="sum" value="+">+</option>
<option id="sub" value="-">-</option>
<option id="div" value="/">/</option>
<option id="tim" value="*">*</option>
</select><br><br>
Second input:<br>
<input type="number" id="secondNumber"><br><br>
</form>
<button onclick="generateResult()">=</button><br><br>
<h3 id="result"></h3>
</body>
<script src="script.js" defer></script>
</html>
我希望这段代码是模块化的,所以每个人都可以实现。像这样:http://semester4.nl/bounce/demo/
我一直在努力学习一些基本的javascript。有人向我建议我应该尝试编写我的代码模块(甚至像这样简单的东西)。我使用过本教程:https://www.youtube.com/watch?v=pOfwp6VlnlM 到目前为止没有运气,有人可以帮助我吗?
谢谢!
答案 0 :(得分:1)
您可以将此代码包装在IIFE中。
(() => {
// your code
})();
如果您有许多文件,那么好主意将使用Webpack,它可以帮助您使用AMD或CommonJS进行工作。
其他选项是使用ES Modules,它应该在没有Webpack的情况下工作。