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
}

更多推荐