【深信服】前端岗-前端一面,50min

没有自我介绍,上来就是题

手撕题(对象的过滤)

const tree = [
  { name: "A" },
  { name: "B", children: [{ name: "A" }] },
  {
    name: "AA",
    children: [
      { name: "BB" },
      { name: "C" },
      { name: "D", children: [{ name: "A" }] },
      { name: "A" },
    ],
  },
  { name: "D", children: [{ name: "C", children: [{ name: "AA" }] }] },
];

//要求实现功能:

//假设我输入的 str 为 A 
//则过滤后返回的结果为 [ {name: ‘A’}, {name: ‘B’, children: [ {name: ‘A’} ]} ]

//假设我输入的 str 为 AA 
//则过滤后返回的结果为 [ {name: ‘B’, children: [ {name: ‘AA’, children: […]} ]} ]

//假设我输入的 str 为 B 
//则过滤后返回的结果为 [ {name: ‘B’, children: [ {name: ‘A’}, {name: ‘AA’, children: […]} ]} ]

// 实现该函数,要求不允许对原有的tree做任何修改,最终返回结果是一棵新结构出来的树 

function filter (tree, str) {

}

一个很长的模板字符串,取出以:::demo,:::结尾的所有字符串,包括换行,要求用正则表达式。

有一个button,点击切换暗黑模式
position的fixed和sticky的区别
最近在看什么比较新的知识?
了解过vite吗?
了解过TS吗?
了解过nest.js吗
对vue3了解多少,看过vue源码吗?
有封装过组件吗?
有自己实现过数据的双向绑定吗?(父组件向子组件传一个props,然后子组件如何动态更新父组件的值)
实现过表的聚合吗?
你的登录权限是怎么实现的?(项目里写的)
你的登录怎么实现的?
token是怎么来的?为什么不用session?(他说现在用的最多的还是session)
import和require的区别
然后结束,没有反问!

let F = function(){}

Object.prototype.a = function(){console.log('a')}
Function.prototype.b = function(){console.log('b')}

let f = new F()

// f.a() 和 f.b()输出什么

有一个button,点击切换暗黑模式
position的fixed和sticky的区别
最近在看什么比较新的知识?
了解过vite吗?
了解过TS吗?
了解过nest.js吗
对vue3了解多少,看过vue源码吗?
有封装过组件吗?
有自己实现过数据的双向绑定吗?(父组件向子组件传一个props,然后子组件如何动态更新父组件的值)
实现过表的聚合吗?
你的登录权限是怎么实现的?(项目里写的)
你的登录怎么实现的?
token是怎么来的?为什么不用session?(他说现在用的最多的还是session)
import和require的区别
然后结束,没有反问!

发表评论

后才能评论