js计算器功能
是木木呀22 人气:01. 使用基本数据类型
注意点: prompt 用户从浏览器输入的任何数据都是字符串型的,使用数字需要强制转换
// 简易对象器 function input1(){ var num1 = prompt('请输入第一个数:'); return parseFloat(num1); } function input2(){ var num2 = prompt('请输入第二个数:'); return parseFloat(num2); } // 1. 加法运算 function add(num1, num2){ return num1 + num2; } // 2. 减法运算 function sub(num1, num2){ return num1 - num2; } // 3. 乘法运算 function multiply(num1, num2){ return num1 * num2; } // 4. 除法运算 function divition(num1, num2){ return num1 / num2; } var str = '欢迎使用简易计算器:\n1. 加法运算;\n2. 减法运算;\n3. 乘法运算;\n4. 除法运算;\n5. 退出:\n请输入您的选项'; var option; var result; do{ option = parseFloat(prompt(str)); switch (option){ case 1: result = add(input1(), input2()); alert('结果是 ' + result); break; case 2: result = sub(input1(), input2()); alert('结果是 ' + result); break; case 3: result = multiply(input1(), input2()); alert('结果是 ' + result); break; case 4: result = divition(input1(), input2()); alert('结果是 ' + result); break; case 5: alert('已退出程序'); break; default: alert('输入错误,请重新输入'); break; } } while(option != 5);
效果展示:
2.使用对象,将简易计算器作为一个对象创建
注意点:构造函数命名首字母大写
// 创建简易计算器, 一个运算类 注意构造函数命名 首字母大写 function Counter(num1, num2){ //输入 数据 这里感觉好像有点多于,但是没有的话,又有点奇怪 可以把下面num1num2全部加上this this.num1 = num1; this.num2 = num2; // 加 this.add = function(){ return num1 + num2; } // 减 this.sub = function(){ return num1 - num2; } // 乘 this.multiply = function(){ return num1 * num2; } // 除 this.divition = function(){ return num1 / num2; } } function input1(){ var num1 = prompt('请输入第一个数:'); return parseFloat(num1); } function input2(){ var num2 = prompt('请输入第二个数:'); return parseFloat(num2); } var str = '欢迎使用简易计算器:\n1. 加法运算;\n2. 减法运算;\n3. 乘法运算;\n4. 除法运算;\n5. 退出:\n请输入您的选项'; var option = 0; var result; while(option != 5){ option = parseFloat(prompt(str)); if(option != 5){ //防止输入5后下一步还运行创建新运算对象,所以直接跳过去选择case5然后跳出循环 var counter_new = new Counter(input1(), input2()); // 新的运算对象 } switch (option){ case 1: result = counter_new.add(); alert('结果是 ' + result); break; case 2: result = counter_new.sub(); alert('结果是 ' + result); break; case 3: result = counter_new.multiply(); alert('结果是 ' + result); break; case 4: result = counter_new.divition(); alert('结果是 ' + result); break; case 5: alert('已退出程序'); break; default: alert('输入错误,请重新输入'); break; } }
加载全部内容