美团地图服务部二面

哇,牛客许愿是真的灵,星期一刚睡完午觉,接到了美团二面的电话,约了第二天面试

面试的小哥哥上来问了我本科在哪里读的,还问了我中学在哪里(后来反问环节知道,小哥哥和我老乡 )

自我介绍了一下,问了项目上的一些问题;

1、 地图数据渲染的时候,后台传给前端的是用什么数据结构,geojson

2、 Leaflet本身有哪些接口

3、 数据量很大的渲染时,怎么去解决?

4、 这个平台每天的访问量多少,以后会不会对外使用?

-------------------------20分钟左右------------------------

做一个算法题,这个写的不好,写了好长时间

题目:

abcd,1 => bcda

abcd,2 => cdab

代码:

let arr = ['a','b','c','d'];

let target = 2;

let newTarget = target%arr.length;

let arr1 = arr.slice(0,newTarget);

let arr2 = arr.slice(newTarget);

let newArr = arr2.concat(arr1);

console.log(newArr);

当时写了这种方法,slice这个方法,一着急还给忘了,用的循环截断写的

然后接着问是否能够原地移动(不要新建数组,哎,写了好长时间,帮我理了好久的思路,我都没写好)
----------------------------------------------------------------------

1、行内元素和块状元素有哪些?区别?

2Postion有哪些属性?分别说一说应用场景?

3、开放性题目:输入一个url发生了什么?(这一题讲了好多)

DNS解析;建立tcp连接;http请求报文(起始行是什么);命中缓存(强缓存,协商缓存);响应报文;浏览器渲染;

自然也讲到了如何进行性能优化(webpack打包;CSSjs放在页面的哪里,为什么这样放置);

5、 你提到起始行中,有版本号,版本号是什么?(http1.0 1.1

6、 区别 ?这边说的不是很好(keep-alive概念理解的有点问题,和websorket概念混淆了)

7、 js文件会被缓存下来?浏览器端可能直接会去使用本地的缓存,那如何知道服务器端的js文件更新了,而去使用这个新的文件呢?这一题我讲了JS文件打包的时候会跟一个hash值,通过这两个值的对比可以知道是否改变(这里我说到了webpack热更新,但感觉不是?)

------------------------------------------

反问环节:算法那边写的不太好,会不会影像很大?

这个面试整体还可以,哎,每次面试手撕代码都只能写出复杂度最高的算法

许愿三面
-------------------------------------------------
之前那篇帖子里有人问我怎么定向投递部门,我当时回复的是“我校招直接投递的,不知道怎么定向投递”;现在想想,校招也是可以选部门的,你在投递的时候选你想去的部门就可以了;我当时选的是都喜欢,所以就不记得定向投递这回事了。
#面经##校招##美团##前端工程师#
全部评论
老哥oc了吗,我也是地图,3+1之后就泡池子了😫😫😫
点赞 回复 分享
发布于 2020-10-14 10:11
请问楼主,你投的是web前端开发工程师嘛
点赞 回复 分享
发布于 2020-10-13 16:27
同poi部门,许愿美团offer
点赞 回复 分享
发布于 2020-09-24 20:52

相关推荐

今天在工作中碰到了一个问题,用easypoi导出excel的时候,实体中BigDecimal类型的属性设置了对应的格式为saleAmount.setNumFormat("#.00");,同时设置类型为double,但是导出时excel还是显示单元格格式为文本,我想问如何设置单元格格式为数值或者日期等类型呢?代码如下:```public class Main {    public static void main(String[] args) {        File file = new File("D:\\kake_work\\excel\\excel_test1.xlsx");        mkdir(file);        int size = 10;        try (OutputStream outputStream = Files.newOutputStream(file.toPath())) {            ExportParams params = new ExportParams();            params.setSheetName("订单页");            params.setType(ExcelType.XSSF);            List<OrderReport> list = new ArrayList<>();            OrderReport report = new OrderReport();            report.setBaseAmountRmb(BigDecimal.valueOf(99.13));            report.setSaleAmount(BigDecimal.valueOf(100.45));            report.setCheckindate(new Date());            OrderReportReq request = new OrderReportReq();            for (int i = 0; i < size; i++) {                list.add(report);            }            List<ExcelExportEntity> dynamicExportColumnSetting = getExcelExportEntities();            Workbook sheets = ExcelExportUtil.exportBigExcel(params, dynamicExportColumnSetting, (queryParams, page) -> {                OrderReportReq req = (OrderReportReq) queryParams;                int listIndex = page - 1;                if (listIndex < size) {                    List<OrderReport> rows = list;                    for (OrderReport row : rows) {                        row.setAdults(1);                    }                    return new ArrayList<>(rows);                }                return null;            }, request);            sheets.write(outputStream);        } catch (Exception e) {            System.out.println("excel导出发生异常");            e.printStackTrace();        } finally {            //remove(file);        }        System.out.println("excel导出成功!");    }    private static List<ExcelExportEntity> getExcelExportEntities() {        List<ExcelExportEntity> dynamicExportColumnSetting = new ArrayList<>();        ExcelExportEntity baseAmountRmb = new ExcelExportEntity("底价CNY", "baseAmountRmb");        baseAmountRmb.setType(BaseEntityTypeConstants.DOUBLE_TYPE);        baseAmountRmb.setNumFormat("#.00");        dynamicExportColumnSetting.add(baseAmountRmb);        ExcelExportEntity saleAmount = new ExcelExportEntity("售价CNY", "saleAmount");        saleAmount.setNumFormat("#.00");        saleAmount.setType(BaseEntityTypeConstants.DOUBLE_TYPE);        dynamicExportColumnSetting.add(saleAmount);        ExcelExportEntity checkInDate = new ExcelExportEntity("入住日期", "checkindate");        checkInDate.setFormat("yyyy/MM/dd");        //checkInDate.setType(BaseEntityTypeConstants.DATE_TYPE);        dynamicExportColumnSetting.add(checkInDate);        return dynamicExportColumnSetting;    }    private static void mkdir(File file) {        if (!file.exists()) {            if (!file.getParentFile().exists()) {                file.getParentFile().mkdirs();            }        }    }    private static void remove(File file) {        if (file != null && file.exists()) {            file.delete();        }    }}```
投递太古地产等公司7个岗位
点赞 评论 收藏
分享
评论
2
2
分享

创作者周榜

更多
牛客网
牛客企业服务