当前位置: 首页 > 面试经验 >

东方财富|暑期实习|前端面试

优质
小牛编辑
77浏览
2023-06-07

东方财富|暑期实习|前端面试

  • 时长1h,两个面试官
  • ps:不熟悉的知识点我在本篇面积会做一个回答
  • 讲一下Vue的数据劫持
  • Watchcomputed的区别,有没有用过watch的一些方法?(inmediate),还有缓存相关的一些东西
  • watch相关配置项
  • handler:function(newval,oldval){}。也可缩写为handler(newval,oldval)类似computed中的get()。当监听的数据改变handler便会被触发。
  • immediate:true|false。监听器是否立即执行,默认为false
  • immediate为false时watch会等待所监听的数据改变,当数据改变时才会触发handler。而 为true时页面一加载handler便会立即执行
  • deep:true|false深度监听
  • 如果想要监听对象中所有的属性却只能一个个单独监听,这种做法显然是非常愚蠢。在vue中,为我们提供了方法来监听对象中的所有属性---深度监听
  • 计算属性和监听属性的不同
  • 1.计算属性的get必须有return,而监听属性return可有可无
  • 2.computed支持缓存,只有依赖数据发生改变,才会重新进行计算;而watch不支持缓存,数据变,直接会触发相应的操作
  • 3.计算属性适用于复杂的运算,而监听属性适合一些消耗性功能,比如Ajax
  • 4.computed不支持异步,当computed内有异步操作时无效,无法监听数据的变化,而watch支持异步
  • 5.如果一个属性是由其它属性计算而来的,这个属性依赖其它属性,多对一或者一对一,一般用computed;而当一个属性发生变化时,需要执行对应的操作,一对多,一般用watch
  • v-ifv-show的区别
  • v-html有什么作用
  • v-html 用来更新元素的 innerHTMLv-html会先移除节点下的所有节点,调用html方法,通过addProp添加innerHTML属性,归根结底还是设置innerHTMLv-html的值
  • 水平垂直居中的方法,细问了定位方法实现的细节,并且面试官补充了可以用table-ceil的方式实现
  • flex的属性,讲了growshrinkbasis,问还有什么其他的属性?
  • 移动端适配的方案
  • https握手,加密的过程
  • 对称加密和非对称加密
  • http的版本演化
  • 常用的http状态码
  • 为什么非对称加密更安全,但https还是有对称加密的方法(对称加密效率更高)
  • 订阅模式
  • 算法,手写在草稿纸上拍照上传
  • 力扣169,要求时间复杂度O(n),空间复杂度O(1)
var majorityElement = function(nums) {
    // 用map的哈希法
    // let hash = new Map();
    // // 一个元素单独考虑
    // if(nums.length == 1) return nums[0];
    // let halfLen = Math.floor(nums.length / 2)
    // for(let i = 0; i < nums.length; i++){
    //     if(hash.has(nums[i])) {
    //         // 这里不能直接对hash.get(nums[i])++,需要将其值+1重新存入map,就会自动覆盖
    //         hash.set(nums[i],hash.get(nums[i]) + 1);
    //         if(hash.get(nums[i]) > halfLen){
    //             return nums[i];
    //         }
    //         //不存在就存进去
    //     }  else {
    //         hash.set(nums[i],1) 
    //     }
    // }
    // 用排序的方法
    // nums.sort((a,b) => a - b);
    // return nums[Math.floor(nums.length/2)];
    
    //摩尔投票法
    let cnt = 1;
    let majority = nums[0]
    for(let i = 1; i < nums.length; i++){
        if(cnt == 0) majority = nums[i];
        if(majority == nums[i]){
            cnt++;
        } else {
            cnt--;
        }
    }
    return majority;
};
  • 只写出了时间复杂度On),空间复杂度O(n)的方法
  • 总结,刚好是我感染新冠的时候面的,那时候状态可能不是太好,计网这块我回答的还可以,但是一些基础层面的点没有覆盖到,也算是一个不错的八股补充了
#我的实习求职记录##23届找工作求助阵地##我的求职思考##东方财富##牛客在线求职答疑中心#
 类似资料: