大二暑期实习面经

494 阅读2分钟

昇腾技术 笔试

  1. 运算 {}+'a'>{}+'b'?
  2. 斐波那契数列两种方法实现

递归

function getFeibo(n) {
    if(n<=0){
        return;
    }
    if (n === 1 || n === 2) {//避免无限递归
        return 1;
    }
    return getFeibo(n - 1) + getFeibo(n - 2);
}
console.log(getFeibo(0));

直接使用变量实现

function fibonacci(n){
    var pre = 0;//表示前一个值
    var cur = 1;//表示后一个值
    var data;//表示当前值

    if(n < 0) throw new Error('请输入大于0的值!');
    if(n == 0) return 0;
    if(n == 1) return 1;
    if(n > 2){
        for(var i=2;i<=n;i++){
            data = pre + cur;
            pre = cur;
            cur = data;
        }
    }
    return data;
}

直接使用数组实现(动态规划)

function fibonacci(n){
    var a = [0,1,1];
    if(n < 0) throw new Error('输入的数字不能小于0');
    if(n >= 3){
        for(var i=3;i<=n;i++){
            a[i] = a[i-1]+a[i-2];
        }
    }
    return a[n];
}

使用闭包保存每次的递归值

function fibonacci(n){
    if(n < 0) throw new Error('输入的数字不能小于0');
    let arr = [0,1];//在外部函数中定义数组,内部函数给数组添加值
    function calc(n){
        if(n<2){
            return arr[n];
        }
        if(arr[n] != undefined){
            return arr[n];
        }
        let data = calc(n-1) + calc(n-2);//使用data将每次递归得到的值保存起来
        arr[n] = data;//将每次递归得到的值放到数组中保存
        return data;
    }
    return calc(n);
}
  1. http请求方式及其区别

  2. 正则表达式,第一位是0或者第一位不是0

GET : 获取资源

POST:传输实体主体

PUT: 传输文件 (使用的场景: 1. 传递文件 2. 修改实体数据)

DELETE : 删除文件

HEAD: 获得报文首部 (不传递里面的数据)

OPTIONS:询问支持的方式

阿壳科技面试

说一下async await promise

项目展示尽快

vue插槽

子组件想调用父组件的函数方法有什么方法

  1. parent

  2. props

git命令

中国安科院面试

中国安科院面试

vue计算属性和watch

前端会什么

vue指令

v-if 和 v-for优先级

vue3和vue2区别

自定义组件实现v-modal

vue生命周期

请求数据的时候在created可以

路由跳转实现的方式

  1. rotulink to 传递的参数

  2. 还有呢

组价之间通信

计算属性使用场景

watch在什么时候用到监听?

forEach和map区别

for in 和 for of

事件模型不只有捕获和冒泡

说一下事件循环

北京卓越联腾

卓越联腾

  1. forEach map
  2. 数组遍历和去重方法

去重

JavaScript数组去重(12种方法,史上最全) - SegmentFault 思否

遍历

es5 forEach

map

filter

every some reduce reduceRight es6 find findIndex keys values entries

  1. 判断数据类型 instanceof typeof 方法区别
  2. 数据类型
  3. 网络 输入URL到页面
  4. UI框架
  5. 重排和重绘
  6. 盒模型和切换方式
  7. doctype
  8. 介绍项目
  9. 音乐播放器进度条咋实现的
  10. 路由跳转
  11. 箭头函数和普通函数
  12. this的理解
  13. 封装逻辑组件 分页组件深入理解
  14. 平时怎么学前端?看过什么书,即读书笔记

建议:封装逻辑组件