前端面试:项目细节重难点问题分享

面试官提问:我现在给你出一个项目实际遇到的问题:由于后端比较忙,所以我们这边的列表数据排序需要前端最近实现,那你会怎么实现排序呢?

答:我的回答:确实,数据都是由后端实现的,前端只是负责获取后展示数据到页面,但如果前端来实现列表数据排序,我必须了解以下内容:

(1)内容1:数据结构是什么?数据结构是一个数组里的每一个元素都是对象,每个对象里有name、id和age三个属性,根据上面的描述,我给大家mock了5条JSON数据,代码如下:

(2)内容2:排序规则是什么?如果name+id+age都有值,第一展示;如果name+id或name+age有值,第二展示;如果只有name有值最后展示。

(3)内容3:没有值的字段在列表展示什么?如果该字段没有值,则展示--。

(4)问题:前端需要自己写出排序规则再对原生sort方法进行封装即可完成上述需求:

(5)解决(代码实现):

(6)效果展示:

(7)知识点:sort()方法

- 作用:对数组的元素进行排序

- 参数:两个参数 a 和 b,表示要比较的两个元素,并返回一个数值:如果 a < b,则返回值 < 0;如果 a > b,则返回值 > 0;如果 a === b,则返回值 === 0

- 返回值:返回排序后的数组

- 注意:会直接修改原数组,而不是创建一个新的数组

相关推荐
deli00717 分钟前
配色对比度检查器:一眼看清文字和背景谁看不清
前端
梦诺18 分钟前
vue3 keepAlive+记录滚动条
前端·javascript·vue.js
葡萄城技术团队22 分钟前
SpreadJS V19.2 新特性揭秘:甘特表的进度线
前端
计算机魔术师40 分钟前
黄仁勋台上接特朗普电话开免提,全场听到一句话:AI 不会减速
前端
聚美智数1 小时前
车型识别-汽车图片识别-车型图片识别-汽车识别-车型OCR
经验分享
yivifu1 小时前
HTML元素的textContent和innerText两个属性的差别
前端·html
conlin day1 小时前
石头记的开头,荣府初逢
经验分享·学习·程序人生
咸鱼老弟1 小时前
Speculative Decoding(投机采样):大模型"先猜后验",生成速度翻倍
前端·算法·ai编程
ocean21032 小时前
2025-2026年C语言专题面试高频知识点洞察
c语言·面试·面试经验
a1117762 小时前
网页版「MATLAB」开源
前端·开源