• 周末啦,做几道面试题放松放松吧!


    题目一:

    请将 text 通过 keywords 转化成为 result 格式

    let text = '我的世界,没有黑暗只有光明和未来';
    let keywords = ['世界', '黑暗', '未来'];
    let result = '我的【世界】,没有【黑暗】只有光明和【未来】'

    题目二:

    请实现一个方法,
    当传入 1,2,3 时,输出 3,2,1
    当传入 2,4,5,5,6,6 时,输出 6,5,4,2

    题目三:
    请实现一个方法,
    将 arr1 数据结构转化为 arr2 (不足时补0,如最后一个[7 ,0])

    let arr1 = [1, 2, 3, 4, 5, 6, 7];
    let arr2 = [[1, 2], [3, 4], [5, 6], [7, 0]];

     

     

     

    不准偷看
    不准偷看
    不准偷看
    不准偷看
    不准偷看
    不准偷看
    不准偷看
    不准偷看
    不准偷看

     

     

     

    题目一答案:

     

    let text = '我的世界,没有黑暗只有光明和未来';
    let keywords = ['世界', '黑暗', '未来'];
    
    keywords.forEach(x => {
       let pattern = new RegExp(`(${x})`);
       text = text.replace(pattern, '【$1】');
    });

    题目二答案:

     

    function handleNumber () {
       let setobj = new Set([...arguments]);
       let args = Array.from(setobj);
       return args.reverse().join(',');
    }

    题目三答案:

    let arr1 = [1, 2, 3, 4, 5, 6, 7];
    
    function calcArr(arr) {
        let a = [];
        let b = [];
        let lastOneIndex = arr.length - 1;
        arr.forEach((x, i) => {
            a.push(x);
            if (i % 2 !== 0 || i === lastOneIndex) {
                if (i === lastOneIndex && a.length === 1) {
                    a.push(0)
                }
                b.push(a);
                a = [];
            }
        });
        return b;
    }

    以上只是小玖个人的解题思路,如果你有更好解题方案,请留言分享,谢谢!

     

  • 相关阅读:
    理解缓慢变化维(Slowly Changing Dimension)
    分析Reporting Service的报表执行记录
    XCOPY
    Esxi主机从VC断开的怪事
    奇怪的SQLserver执行
    明细表达到15亿了
    现在才知道“quota”
    oledb读取Excel数据丢失原因
    配置subversion
    sql服务器的操作系统升级,数据库如何来迁移呢?
  • 原文地址:https://www.cnblogs.com/similar/p/14013641.html
Copyright © 2020-2023  润新知