1.main.js部分用于控制台输出
const Operations = require('./operation')
const readline = require('readline')
const rl = readline.createInterface({
input: process.stdin,
output: process.stdout
})
//监听键入回车事件
rl.on('line', (str) => {
// str即为输入的内容
if (str === 'close') {
// 关闭逐行读取流 会触发关闭事件
rl.close()
}
// console.log(str);
let str2 = str.split('');
// console.log(str2);
let COperations = Operations.operation.op(str2);
console.log(COperations.result);
})
// 监听关闭事件
rl.on('close', () => {
console.log('触发了关闭事件');
})
2.operation.js部分用于对象的创建
//运算父类
class operation{
static op(str){
let obj = new Object();
switch (str[1]){
case '+':
obj.result = parseInt(str[0]) + parseInt(str[2]);
break;
case '-':
obj.result = parseInt(str[0]) - parseInt(str[2]);
break;
case '*':
obj.result = parseInt(str[0]) * parseInt(str[2]);
break;
case '/':
obj.result = parseInt(str[0]) / parseInt(str[2]);
break;
}
return obj;
}
}
//导出
module.exports = {
operation
}