閱讀了本書網上試讀的部分,本人用 JavaScript 語言重寫該書中C#來源程式的代碼。
第一章1.1節的原始碼重寫:
Code
Program = {
main: function() {
if(!document.getElementById) return;
var A = document.getElementById('numA').value;
var B = document.getElementById('operator').value;
var C = document.getElementById('numB').value;
var D = '';
if(B == '+') {
D = Number(A) + Number(C);
}
if(B == '-') {
D = Number(A) - Number(C);
}
if(B == '*') {
D = Number(A) * Number(C);
}
if(B == '/') {
D = Number(A) / Number(C);
}
document.getElementById('compute').onclick = function() {
return document.getElementById('result').innerHTML = D;
}
}
}
HTML代碼:
Code
<p>
<label for="numA">請輸入數字A:</label>
<input type="text" id="numA" value="" />
</p>
<p>
<label for="operator">請選擇運算子號(+、-、*、/):</label>
<input type="text" id="operator" value="" />
</p>
<p>
<label for="numB">請輸入數字B:</label>
<input type="text" id="numB" value="" />
</p>
<p>
<button id="compute">計算</button>
</p>
<p>
<span id="result"></span>
</p>
第一章1.3節的原始碼重寫:
Code
Program = {
main: function() {
if(!document.getElementById) return;
try {
var sNumA = document.getElementById('numA').value;
var sOperate = document.getElementById('operate').value;
var sNumB = document.getElementById('numB').value;
var sResult = '';
switch(sOperate) {
case '+':
sResult = (Number(sNumA) + Number(sNumB)).toString();
break;
case '-':
sResult = (Number(sNumA) - Number(sNumB)).toString();
break;
case '*':
sResult = (Number(sNumA) * Number(sNumB)).toString();
break;
case '/':
if(sNumB != '0')
sResult = (Number(sNumA) / Number(sNumB)).toString();
else
sResult = '除數不能為 0';
break;
}
}
catch(ex) {
console.log('你的輸入有誤:' + ex);
}
document.getElementById('compute').onclick = function() {
return document.getElementById('result').innerHTML = sResult;
}
}
}