美文网首页
2018-09-09

2018-09-09

作者: yesufan | 来源:发表于2018-09-09 21:15 被阅读0次

    前端笔试第一坑:nodejs输入输出(一):

    参考:nodejs oj在线笔试应对方案(讲几种输入处理方法) - 大~熊 - 博客园

    最近参加了一些线上笔试。但是js居然没有类似于其他语言的输入输出流,怎么 办,怎么办。node不就是用的js吗?所以只用学会标准输入输出才可以解题的。下面总结几种方法,可以当作解题模板,直接套就可以了。




    一般题的简单模板

    var readline = require('readline');

    rl = readline.createInterface({

        input: process.stdin,

        output: process.stdout

    });

    rl.on('line', function(data) {

        // 获取输入

        var inputs = data.trim().split(' ');

        // 处理

        var result = deal(inputs);

        // 输出结果

        console.log(result);

    });

    function deal(inputs) {

        var result = '';

        // dosomething

        return result;

    }

    经典例子:

    根据输入的字符串不同,对应不同输出

    var readline = require('readline');

    var rl = readline.createInterface({

    input: process.stdin,

    output: process.stdout,

    });

    rl.setPrompt('Test> ');

    rl.prompt();

    rl.on('line', function(line) {

    switch (line.trim()) {

    case 'copy':

    console.log("复制");

    break;

    case 'hello':

    console.log('world!');

    break;

    case 'close':

    rl.close();

    break;

    default:

    console.log('没有找到命令!');

    break;

    }

    rl.prompt();

    });

    rl.on('close', function() {

    console.log('bye bye!');

    process.exit(0);

    });


    第一行为下一行输入元素的个数(输入一行):求一个数组中的最大值与最小值

    输入描述:第一行为数组元素个数,第二行为数组元素

    输出描述:最大值、最小值空格隔开

    实例:

    5                    //输入N个数的数量

    12 18 5 20 10        //N个数

    20 5                //返回结果

    var readline = require('readline');

    var rl = readline.createInterface({

        input:process.stdin,

        output:process.stdout,

    });

    var num = 0;

    rl.on('line',function(input){

        if(num==0){

            num = input.trim();

        }

        else{

            var iptArr = input.split(' ');

            if(iptArr.length==num){

                var maxNum = Math.max.apply(null,iptArr);

                var minNum = Math.min.apply(null,iptArr);

                var result = maxNum + ' ' + minNum;

                console.log(result);

                return result;

            }

        }

    })

    相关文章

      网友评论

          本文标题:2018-09-09

          本文链接:https://www.haomeiwen.com/subject/qfjdgftx.html