资讯专栏INFORMATION COLUMN

面试之旅-深圳 遇到的问题和一些自己的拓展以及答案2

genefy / 1961人阅读

摘要:有趣的是,实际上并没有将事件附加到子节点本身。将使用单个事件监听器监听顶层的所有事件。这对于性能是有好处的,这也意味着在更新时,不需要担心跟踪事件监听器。

❤,调用 setState 之后React内部发生了什么?

将传递给setState的对象和当前对象合并,将触发和解过程,react构建一个新的react树,并且进行diff对比,在绝对必要的情况触发组件渲染。

参考:https://blog.csdn.net/fuohua/...


❤,React Component(组件) vs React Element(元素)区别是什么
Element是React 中最小基本单位,是普通对象。

const element = 
I"m element
//就是一个element

而组件是类或者函数。

参考:https://segmentfault.com/a/11...


❤,受控组件和非受控组件是什么意思
受控组件是React控制的组件,也是表单数据的唯一真理来源;非可控组件指是表单数据由 DOM 处理,而不是您的 React 组件处理的组件,比如:

//我们使用 refs 来完成这个
class UnControlledForm extends Component {
  handleSubmit = () => {
    console.log("Input Value: ", this.input.value)
  }
  render () {
    return (
      
this.input = input} />
) } }

参考 同上


❤,描述事件在React中的处理方式
为了解决跨浏览器兼容性问题,您的 React 中的事件处理程序将传递 SyntheticEvent 的实例,它是 React 的浏览器本机事件的跨浏览器包装器。

这些 SyntheticEvent 与您习惯的原生事件具有相同的接口,除了它们在所有浏览器中都兼容。有趣的是,React 实际上并没有将事件附加到子节点本身。React 将使用单个事件监听器监听顶层的所有事件。这对于性能是有好处的,这也意味着在更新DOM时,React 不需要担心跟踪事件监听器。

参考 同上


❤,盒模型与BFC


❤,请描述import/require的原理


❤,根据如下代码,判断输出结果
1,

    var User = {
        coun: 1,
        getCount: function (){
            return this.count;
        }
    }
    
    var func = User.getCount;
    console.log(func());  //undifined

2,

function test(){
    for (var i=0;i<5;i++){
        setTimeout(function (){
            console.log(i);
        },0)
    }
}

test();//5,5,5,5,5

3,

var a = {
    fn: function (){
        console.log(fn);
    }
}

4,

function Animal(name){
    this.name = name;
}

Animal.prototype.sayName = function (){
    console.log(this.name);
}

function Cat(name){
    Animal.call(this, name)
}

var kay = new Cat("Jim");

kat.sayName();

5,


内容


❤,写一个数组去重的方法


❤,写一个大整数乘法计算的方法


❤,写一个方法,将URL中的查询字符串解析成一个Object


❤,请使用多种方式实现 左边定宽400px,右边自适应


❤,请使用多种方式实现 圣杯布局 和 双飞翼布局
首先,圣杯布局要符合以下3点要求:

1,三列布局,中间宽度自适应,两边定宽
2,中间栏要在浏览器中优先展示渲染
3,允许任意列的高度最高


❤,请使用多种方式实现 水平垂直居中

方法1



1234

方法2



1234

参考:https://blog.csdn.net/qq_2757...

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/54562.html

相关文章

  • 面试之旅-深圳 遇到问题一些自己拓展以及答案2

    摘要:有趣的是,实际上并没有将事件附加到子节点本身。将使用单个事件监听器监听顶层的所有事件。这对于性能是有好处的,这也意味着在更新时,不需要担心跟踪事件监听器。 ❤,调用 setState 之后React内部发生了什么? 将传递给setState的对象和当前对象合并,将触发和解过程,react构建一个新的react树,并且进行diff对比,在绝对必要的情况触发组件渲染。 参考:https:/...

    zoomdong 评论0 收藏0
  • 面试之旅-深圳 遇到问题一些自己拓展以及答案2

    摘要:有趣的是,实际上并没有将事件附加到子节点本身。将使用单个事件监听器监听顶层的所有事件。这对于性能是有好处的,这也意味着在更新时,不需要担心跟踪事件监听器。 ❤,调用 setState 之后React内部发生了什么? 将传递给setState的对象和当前对象合并,将触发和解过程,react构建一个新的react树,并且进行diff对比,在绝对必要的情况触发组件渲染。 参考:https:/...

    xingpingz 评论0 收藏0
  • 面试之旅-深圳 遇到问题一些自己拓展以及答案1

    摘要:比如如果不使用构造函数,则和是对象的方法,两个方法的作用是一样的谁谁,就把指向谁。,本题提到了冒泡算法,那么就认为不是要使用原生的方法,要自己封装一个类似功能的方法或称函数。就是通过中构造函数原型链继承的方式来实现的。 ❤,es6中的高级数据结构set和map的使用以及与es5中旧有的obj、array等结构的差别? (1) Set构建函数可以接受一个数组作为初始化参数 var s...

    RiverLi 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<