阿里 蚂蚁 前端面经

凉的透透的,首先问项目,楼主项目是做中台,面试官一直追问平台的商业价值,所以说清楚了项目里的东西(楼主自认为。。)也没能让面试官满意
然后出了题,现在还不会这题,大佬们帮忙看看。之后又问了vuex的设计思路,为什么要用mutation修改状态,为什么不能直接修改state状态(这题感觉也没答好,大佬们赐教)
包装一个高阶函数,
模拟发送请求 ,只取最后一次的结果,前面的promise还没完成的话就取消
function wrap(){
    // your code
}

let count=0;
function sendRequest(){
    return new Promise((resolve)=>{
        setTimeout(()=>{
         resolve(++count)   
        })
    });
}
let newWrap = wrap(sendRequest);
newWrap().then(console.log) 
newWrap().then(console.log) 
newWrap().then(console.log) //输出3


#阿里前端面经##阿里巴巴##面经#
全部评论
试着写了一个,大中午看到这题午睡的时候一直在想,输出是3,不知道思路正不正确 function wrap() {     let req = [...arguments][0];     let promises = [];     function fn() {         let p = req();         promises.push(p);         return new Promise((resolve, reject) => {             promises.forEach((promise, index) => {                 promise.then(res => {                     if (index === promises.length - 1) {                         resolve(res);                     }                 }, err => {                     if (index === promises.length - 1) {                         reject(res);                     }                 })             });         });     }     return fn; } let count = 0; function sendRequest() {     return new Promise((resolve) => {         setTimeout(() => {             resolve(++count)         })     }); } let newWrap = wrap(sendRequest); newWrap().then(console.log); newWrap().then(console.log); newWrap().then(console.log);
3 回复 分享
发布于 2022-01-11 15:09
function wrap(func) { // your code let requestCount = 0; return function () { requestCount++; return new Promise(resolve => { const num = requestCount; func().then(res => { if (num === requestCount){ resolve(res); } }) }) } } 主要思路是保存当前请求次数
2 回复 分享
发布于 2022-02-09 18:18
您这是社招吗
点赞 回复 分享
发布于 2022-03-08 15:57
向你推荐字节跳动的 4036 个热招职位:https://job.toutiao.com/campus/m/position?referral_code=JG445W8
点赞 回复 分享
发布于 2022-02-26 21:06
抖音电商了解一下不?
点赞 回复 分享
发布于 2022-02-09 17:41
这道题思考感觉就是手写promise.all,然后返回最后一个结果就可以了。不知对不对
点赞 回复 分享
发布于 2022-02-08 14:49
写法有很多,本质就是sendRequest先都执行了,只是不push结果,后面只要拿到最后一个结果即可
点赞 回复 分享
发布于 2022-02-02 09:06
为了追踪状态变化,action是异步的
点赞 回复 分享
发布于 2022-01-21 15:58
想知道楼主是校招补录么~
点赞 回复 分享
发布于 2022-01-13 17:56
promise这题意思是自己写一个race方法?
点赞 回复 分享
发布于 2022-01-07 19:10
阿里出的题就不能常规一点吗呜呜呜,我前天也是,出了个promise题,做了一个多小时
点赞 回复 分享
发布于 2022-01-06 10:17

相关推荐

12-07 02:18
厦门大学 golang
自5月份去实习以来一直都忘了还有个牛客的号,今天就前段时间的秋招做个总结吧offer:字节,美团,xhs,pdd,bilibili,快手,滴滴泡:百度挂:虾皮,腾讯offer1. 美团,ssp,n * 16,考虑到业务前景没有去,已拒2. 字节,实习转正,n+4+签,不知道算不算ssp,今年os上有些高的逆天,准备接3. xhs,ssp,n+8,压力有点大,纠结后拒4. pdd,意向,未开,11 11 6没兴趣5. b站,n-2,说是本科最高档,有点想去,谁会不喜欢11 8 5的wlb工作呢6. 快手,唯一杭州的,n-1,不是ssp,强度也大,就不考虑了,已拒7. 滴滴,base北京,直接拒泡百度真的逆天,提前批最早面的,8月初就面完了,但现在一点消息没有,连个联系方式都没有挂1. 虾皮,2面挂,不知原因,感觉面的挺好的,题也都写出来了,本来挺想去的2. 腾讯,没办法还是不够强,面了wxg和广告,都是2面挂,最主要的还是秋招完全没准备八股文吧,腾讯的八股文轰炸确实没招架好,回答的不咋深入另外阿里系全简历挂,不知道是因为本科学历还是暑期实习那会儿笔试没做好留档了整体来说还算满意,字节拿到转正后就离职了,秋招的目的主要就是2个,一是拿一个极高base来a,二是找个wlb并且高薪的机会最终结果来看目标一是达到了,xhs今年真的顶,二确实没达到,主要是没找到外企的机会,看来近些年外企是真机会不多了,而且外企基本都是sde全栈,只做个前端还真不太行,主包最近也开始好好学go后端了,进去先看有没有机会往全栈方向转转秋招能拿几个ssp真的要多亏了有些ai方面的项目经验,不得不感慨找到风口是真的一日千里不过主包还是保持着想去web3做远程工作的初心,当初也是因为接触到了web3才下定决心不读研了去学开发,现在看来校招是没有机会了,期待未来能有校招正式结束,以后大概率也不刷牛客了,愿牛u们也都能找满意的工作,以上
点赞 评论 收藏
分享
评论
4
33
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务