
获得徽章 24
- #创意代码大赏# 花里胡哨的
function rgbColor(){
let r = Math.floor(Math.random()*256);
let g = Math.floor(Math.random()*256);
let b = Math.floor(Math.random()*256);
let rgb = `rgb(${r},${g},${b})`;
return rgb;
}
let str = '欢迎来到沸点冬日嘉年华'
let strArr = str.split('')
let colorArr = []
for(let i=0;i<strArr.length;i++){
colorArr.push(`color:${rgbColor()};font-size:30px;`)
}
str = '%c' + strArr.join('%c')
console.log(str, ...colorArr)展开赞过21 - 这篇文章介绍了如何利用lightporxy工具在PC端和手机端进行抓包和代理。并且介绍了常用的代理/环境切换/在线上环境调试本地代码等等,是能够提升前端工程师开发效率与解决问题能力的一项好技能。值得推荐~评论点赞
- 这篇文章主要讲解了在js中使用双等号 == 会带来的一些隐式转换问题。并且针对操作符两边的数据类型会进行怎样的转换都给出了规则和对应的案例。如果你还不知道 == 号是如何进行隐式转换,那么推荐你阅读他。评论点赞
- 这篇文章介绍了一些Javascript代码的编写技巧,通过 定义数字常量、判断条件的封装、避免否定判断、减少大量的 if...else.. 等方式来提升我们代码的简洁度与可读性。评论点赞
- 这篇文章结合实际运用场景介绍了几个很实用的响应头,包括:
1.Content-Disposition: 控制内容下载/预览
2.Cache-Control: 前端缓存相关
3.set-cookie: 登录 机制
通过对响应头的认识,能够使我们在开发联调过程中更加得心应手评论点赞 - 这篇文章介绍了前端路由的实现
hash模式:通过监听hashchange事件来渲染不同的组件代码;
history模式:利用浏览器的history.pushState 和 history.replaceState 事件,配合自定义监听事件EventTarget.dispatchEvent来实现对以上 事件的监听。需要注意的是history模式如果刷新页面会去访问对应路径的静态资源,此时应该配合服务器进行对应配置(当访问路径不存在时寻找可访问的静态资源,如index.html)展开评论点赞 - 文章介绍了五种跨页面通信的方式:
1.onstorage
2.BroadCast Channel
3.Service Worker
4.open & opener
5.SharedWorker
作者对这五种方式的使用以及利弊均作了介绍并给出了比较推荐的方式。
需要注意的是以上方案都是针对同源tab页面之间的通信展开评论点赞 - 推荐一篇关于缓存的文章,文中详细地介绍了缓存的种类(强缓存与协商缓存),并且介绍了缓存设置的相关字段以及对应的作用。笔者还细心地贴了浏览器是如何请求缓存的流程图,适合对浏览器缓存机制不熟悉的小伙伴进行阅读。评论点赞