阿里-前端-二面(已offer)

9月21日19:00 ~ 20:20

唠家常

打开笔试界面开始做题

使用队列进行BFS,查找对应节点

太简单不写了

事件委托题,如何优化

<ul id="list">
        <li class="item">item 1</li>
        <li class="item">item 1</li>
        <li class="item">item 1</li>
        <li class="item">item 1</li>
        <li class="item">item 1</li>
    </ul>
<script>
    const element= document.getElementsByClassName('item')
    for(let i in element) {
        element[i].addEventListener(
          'click', 
          this.target.backgroundColor = '#FF0000'
        )
    }
</script>

React组件随机数引起的闪烁,手写优化(setState random)

const Demo: React.FC<any> = (props) => {
    const [count, setCount] = useState(0)
    useEffect(() => {
        if (count === 0) {
            const ramdomNumber = 100 + Math.random() * 200
            count = Math.random() * 200
        }
    }, [count])

    return (
        <>
            <Button type="primary" onClick={() => setCount(0)}>
                {count}
            </Button>
        </>
    )
}

React组件,this指向题手写优化(setTimeout)

点击两个Button会发生什么

import React from 'react'

export class DemoProps {
    onParamsChange
}

const Demo: React.FC<DemoProps> = (props) => {
    const { onParamsChange } = props
    const bottle = {
        nickname: 'Bottle',
        sayHi: function (value) {
            return onParamsChange(value, this.nickname)
        },
        sayHello: setTimeout(function (value) {
            return onParamsChange(value, this.nickname)
        }, 1000),
    }
    return (
        <>
            <Button type="primary" onClick={bottle.sayHi}>
                hi
            </Button>
            <Button type="primary" onClick={bottle.sayHello}>
                hello
            </Button>
        </>
    )
}

React 一个很长的组件手写怎么优化(组件拆分、自定义hooks)

全部评论
太强了,感觉都很难啊
2 回复 分享
发布于 2022-10-26 16:02 北京
你好 请问react相关代码是用脚手架创建一个react项目再写需求吗 还是面试的代码平台有react环境呢
点赞 回复 分享
发布于 2022-12-12 20:52 北京

相关推荐

10-25 23:12
门头沟学院 Java
点赞 评论 收藏
分享
一名愚蠢的人类:多少games小鬼留下了羡慕的泪水
投递荣耀等公司10个岗位
点赞 评论 收藏
分享
评论
8
29
分享
牛客网
牛客企业服务