获得徽章 7
- #每天一个知识点#
如果有个arr( 数组)很大,可以考虑使用 filter 方法来过滤不需要的元素,而不是使用 forEach 遍历每个元素并检查。这可以减少遍历次数,提高效率 。
let diwnList = arr.filter(item => item.name !== '条件');
如果arr数组中的元素很多,而且它们的 name属性值经常变化,可以考虑使用 Set 数据结构来存储这些值,并使用 has 方法来检查一个值是否存在于这个集合中。这可以避免每次比较字符串的代价,提高性能。
let excludeTables = new Set(['条件']);
let diwnList = [];
arr.forEach(item => {
if (!excludeTables.has(item.name)) {
diwnList.push(item);
}
});
具体哪种更适合取决于具体的应用场景和数据特点。展开12 - #每天一个知识点#
当作者数量为1时,将整个分数列表替换为给定的值 val。当作者数量为2时,将前两个位置的分数分别乘以0.6和0.4,并将结果四舍五入保留两位小数。当作者数量大于2时,将前三个位置的分数分别乘以0.5、0.3和0.2,并将结果四舍五入保留两位小数。
1.将计算分数的逻辑提取到一个函数中,以避免重复代码。
2.使用 map 方法来代替 forEach 方法,以更简洁地遍历分数列表并计算分数。
function calculateScore(index) {
if (authorLength == 1) {
return val
} else if (authorLength == 2) {
return (val * [0.6, 0.4][index]).toFixed(2)
} else {
return [0.5, 0.3, 0.2][index].toFixed(2)
}
}
sorceList = sorceList.map((item, index) => calculateScore(index))
1.定义一个名为 calculateScore 的函数,该函数接受一个索引参数 index,根据作者数量返回相应的分数值。
2.使用 map 方法遍历分数列表 sorceList,并将每个元素传递给 calculateScore 函数进行计算。最终返回一个新的分数列表,其中每个元素都是根据作者数量计算得出的。展开评论2 - #每天一个知识点# CSS媒体查询(Media Queries)是响应式设计(Responsive Design)中的重要组成部分,它允许我们根据不同设备的特性,调整页面的样式。
CSS媒体查询由一个条件语句和一个样式规则组成。当条件语句的返回值为真时,样式规则会被应用。
一个简单的CSS媒体查询的例子:
/* 当设备的宽度小于600px时,应用以下样式 */
@media (max-width: 600px) {
body {
background-color: #f00;
}
}
上面的代码表示当设备的宽度小于600像素时,将网页的背景颜色设置为红色。
CSS媒体查询的一些常见条件:
1.设备宽度(Device Width):使用width关键字可以指定设备屏幕的宽度。例如:
@media (width: 768px) { ... }
上面的代码表示当设备的宽度等于768像素时,应用样式规则。
2.设备高度(Device Height):使用height关键字可以指定设备屏幕的高度。例如:
@media (height: 480px) { ... }
上面的代码表示当设备的宽度等于480像素时,应用样式规则。
3. 设备方向(Orientation):使用orientation关键字可以指定设备屏幕的方向(横屏或竖屏)。例如:
@media (orientation: landscape) { ... }
上面的代码表示当设备处于横屏模式时,应用样式规则。
4. 设备像素比(Pixel Ratio):使用-webkit-pixel-ratio关键字可以指定设备屏幕的像素比(即每英寸点数)。例如:
@media (-webkit-pixel-ratio: 2) { ... }
上面的代码表示当设备的像素比为2时,应用样式规则。
5. 设备类型(Type):使用type关键字可以指定设备的类型,如手机、平板、电视等。例如:
@media (type: tv) { ... }
```上面的代码表示当设备类型为电视时,应用样式规则。展开评论1
![[灵光一现]](http://lf-web-assets.juejin.cn/obj/juejin-web/xitu_juejin_web/img/jj_emoji_25.51e6984.png)
钻2打了一波韦鲁斯11连胜![[泪奔]](http://lf-web-assets.juejin.cn/obj/juejin-web/xitu_juejin_web/img/jj_emoji_85.43ad2fc.png)
![[发怒]](http://lf-web-assets.juejin.cn/obj/juejin-web/xitu_juejin_web/img/jj_emoji_12.0f24f23.png)
遇到这种情况,大家都怎么做。咋还有这样的人呢。