蚂蚁 前端一面面经

笔试部分:
阿里伯乐系统 60min

第一题、根据表达式计算字母数量
描述:输入一串字符串,根据字符串求出每个字母的数量并返回结果对象。(数字为1时可省略)
示例一:输入:A3B2,输出:{“A”: 3, “B”: 2}
示例二:输入:A(A(A2B)2)3C2,输出:{“A”: 16, “B”: 6, “C”: 2}

第二题、手写节流
描述:参数一:执行的函数,参数二:时间间隔。要求实现即使函数被连续处罚多次也只在连续时间内执行一次。

第三题、对象扁平化
输入:
{
a: ‘a’,
b: [1, { c: true }, [3]],
d: { e: undefined, f: 3 },
g: null,
}
输入用例记不太清了,应该大致差不多吧

输出:
{
a: “a”,
b[0]: 1,
b[1].c: true,
b[2][0]: 3,
d.f: 3
// null和undefined直接舍去
}

面试部分:
1、自我介绍
2、有没有看过React的源码?
3、为什么在JSX里循环生成DOM需要添加key
4、class组件和使用hooks的组件有什么区别
5、有没有用过iframe?
6、有做过h5的手机端的页面吗
7、解释一下rem
8、解释一下Promise是什么概念
9、在以往的项目里有遇到什么困难的点吗?

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值