**今天给大家整理了「牛某网网友」✅**分享的高德大云图WebGIS技术面一面的面试题 + 答案。大家可以结合自身知识储备、以及项目经验整合复盘!
另外提醒大家:26 届春招提前批已经全面开启,年后就是春招面试的白热化高峰期,当下就业环境竞争激烈,岗位僧多粥少,早准备、拿先机,才能稳稳拿下心仪 offer!
问题如下:
webgis题:
1.平常网页地图用的什么投影
2.平常网页地图有什么数据;矢量和栅格,用什么格式
3.尽可能多的说出webgis的一些控件和内容
4.知道arcgis和qgis吗 怎么用的
前端题:
5.如何实现元素垂直居中
6.css怎么实现两个元素重叠 点击响应下方元素
7.https状态码
8.前端储存
9..webpack打包
10.异步调用;宏任务和微任务的实现顺序
11.知道JSONP吗
12.vue中双向数据绑定怎么实现的
13.防抖和节流
本文内容为缩略版,便于大家背诵记忆,完整版(含代码部分)无~偿~分~享!文末踢踢~

1.平常网页地图用的什么投影
绝大多数用的都是 Web 墨卡托投影 ,它的编码是 EPSG:3857。几乎所有主流的在线地图服务(如高德、百度、腾讯、谷歌、必应地图)都使用这种投影,兼容性最好。
2.平常网页地图有什么数据;矢量和栅格,用什么格式
第一类是底图数据 ,通常是瓦片,就是一张张切好的图片;
第二类是业务数据
前端开发最常用的是 GeoJSON 格式,它是基于 JSON 的,非常轻量,前端解析很方便。另外,还有 Shapefile 这种 GIS 专用格式,但它不能直接在网页用,通常要转成 GeoJSON 或者切片后再用。
3、webgis的一些控件和内容
常用的控件有:缩放控件(放大缩小)、比例尺、鹰眼控件(右下角那个小地图)、图层切换器(控制图层显隐)、图例。
内容方面,核心就是图层管理、空间查询(比如点选查属性)、地图量算(测距测面)以及数据可视化(热力图、轨迹回放)。
4、知道 ArcGIS 和 QGIS 吗?怎么用的?
ArcGIS是 ESRI 出的商业软件,它是一个全家桶。
我们通常用 ArcGIS Pro (或 ArcMap)做数据处理和制图,然后用 ArcGIS Server 发布服务,前端通过 API 调用。
QGIS 是开源免费的,它主要是桌面端软件。
功能和 ArcGIS 很像,主要用来做数据处理、格式转换和简单的分析,因为它免费且插件多,处理数据时用得比较多。
5.如何实现元素垂直居中
我主要用 Flex 布局,给父盒子设 display: flex; align-items: center; justify-content: center;,这是最简单通用的。
如果不确定宽高,也可以用 绝对定位 配合 transform: translate(-50%, -50%) 来实现。
6.css怎么实现两个元素重叠 点击响应下方元素
重叠可以用 绝对定位。要点击下方元素,核心是给上层元素加一个 CSS 属性:pointer-events: none;。这样鼠标事件就会穿透上层元素,直接作用到下层元素上。
7.https状态码
HTTP 状态码:
200是成功;
301/302是重定向;
304是缓存命中,没修改;
404是找不到资源;
401是未授权,没登录;
403是禁止访问,没权限;
500是服务器内部错误。
8.前端储存
主要有三种:
Cookie:容量小(4KB),每次请求都会自动发给服务器,一般存 Token 或用户标识。
LocalStorage:容量大(5MB),永久存储,关闭浏览器也在,适合存用户偏好设置。
SessionStorage:也是 5MB,但页面一关就没了,适合存临时数据。
9..webpack打包
主要有三种:Cookie:容量小(4KB),每次请求都会自动发给服务器,一般存 Token 或用户标识。LocalStorage:容量大(5MB),永久存储,关闭浏览器也在,适合存用户偏好设置。SessionStorage:也是 5MB,但页面一关就没了,适合存临时数据。
10.异步调用;宏任务和微任务的实现顺序
现在最主流、最推荐的是用 async/await。
它是 Promise 的语法糖,写法像同步代码一样,非常清晰,用 try/catch 捕获错误,解决了以前回调函数 "地狱嵌套" 的问题。
11.知道JSONP吗
它是一种跨域解决方案。原理是利用 <script> 标签不受同源策略限制的特点。通过动态创建 script 标签,后端返回一个函数调用,前端执行这个回调函数来获取数据。不过它只支持 GET 请求,现在项目里更多用 CORS 解决跨域了。
12.vue中双向数据绑定怎么实现的
Vue 2 是用 Object.defineProperty 进行数据劫持,配合发布 - 订阅模式。数据变了,通知视图更新;
Vue 3 改成了用 Proxy 代理,性能更好,能监听到对象属性的新增和删除。
13.防抖和节流
这两个都是为了优化性能,限制高频事件的触发次数。
防抖(Debounce):是 "触发后延迟执行"。如果在延迟时间内又触发了,就重新计时。比如搜索框输入联想,等用户不打字了再请求。
节流(Throttle):是 "每隔一段时间执行一次"。不管触发多频繁,保证固定频率执行。比如滚动加载更多,每 500 毫秒只算一次。

完整版👇