当前位置:首页 » 网页前端 » we前端性能优化
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

we前端性能优化

发布时间: 2023-03-22 11:29:26

① WEB前端培训课程需要学习哪些方面的技术

  1. 前端页面重构

    内容包含了:(PC端网站布局项目、HTML5+CSS3基础项目、WebApp页面布局项目)

  2. JavaScript高级程序设计

    内容包含:(原生JavaScript交互功能开发项目、面向对象进阶与 ES5/ES6应用项目、JavaScript工具库自主研发项目)

  3. PC端全栈项目开发

    内容包含:(jQuery经典交互特效开发、HTTP协议、Ajax进阶与PHP/JAVA开发项目、前端工程化与模块化应用项目、PC端网站开发项目、PC端管理信息系统前端开发项目)

  4. 移动端项目开发

    内容包含:(Touch端项目、微信场景项目、应用 Angular+Ionic开发 WebApp项目、应用 Vue.js开发 WebApp项目、应用 React.js开发 WebApp项目)

  5. 混合(Hybrid,ReactNative)开发

    内容包含:(微信小程序开发、React Native、各类混合应用开发)

  6. NodeJS全栈开发

    内容包括:(WebApp后端系统开发、一、NodeJS基础与NodeJS核心模块二、Express三、noSQL数据库)

  7. 大数据可视化

    内容包含:(大数据可视化化基础与实战、一、数据可视化入门、二、D3.js详解、三、其他JS库)

  8. 学习内容大家清楚之后,可以更好地学web前端课程,选择试听课程可以了解自己适不适合这门课程,也了解下机构老师的讲课思维和方式,这样也可以提高自己的学习状态和方式。

② 前端性能优化之路——图片篇。

本人是一名前端开发者,在公司负责目前负责信息流服务,为五大手机厂商和各大App提供服务,每天的请求就是以亿计算,加上我们又做了SSP和DSP,就是类似于网络广告联盟,腾讯广点通这种。接触过的应该知道,所以前端优化一直是我头痛的问题,不仅要注重用户体验,同时要兼顾收益,有时候必须牺牲一些用户体验,但是作为一名有思想的前端,还是努力规避掉,希望能和从事相同业务的同学一起学习交流一下,话不多说,就来分享我的性能优化之路,有什么不对的知识点,麻烦大家指出批评。

yahoo军规把大部分的前端优化都提到了,而在js优化这一块如果有兴趣的额,推荐大家去看《 高性能javascript 》,书里讲的非常详细。 https://segmentfault.com/a/1190000008481413

Media Queries 调用高清背景图

通过 devicePixelRatio的值,就可以区分普通显示屏和高清屏,当devicePixelRatio值等于1时(也就是最小值),那么它普通显示屏,当devicePixelRatio值大于1(通常是1.5、2.0),那么它就是高清显示屏。这时候我们可以让UI准备2套图片,甚至是3套图片,不同像素的图利用媒体查询结合 devicePixelRatio 可以区分普通显示屏和高清显示屏,并给出了如下CSS设计方案:

也可以用less或者sass

如果省时间通用性高,就像我们是服务端用nginx对图片进行处理,想要什么样尺寸的图片自己裁切,我们提供了按比例缩放和自定尺寸的裁切方法,地址后拼接字符串就行。

与其他图片格式相比,在肉眼无法分辨图片质量差异的情况下,WebP的空间占用是最小的,目前国内外各大互联网公司都已经开始应用这一图片格式。比如美团

想实现首先是判断,即识别单次访问的来源浏览器是否支持 webp 格式,其次是执行,如果该浏览器支持,则将原图替换为 webp 格式,并返回。如果不支持,则显示原格式图片。 http://caniuse.mojijs.com/Home/Html/item/key/webp/index.html

在识别阶段,我们有两种方法:

1. Server 处理

只要有请求,服务端就能拿到你的User-Agent信息,通过对浏览器进行分类,支持webp放在白名单里,不支持的则为黑名单。判断为白名单,则直接调用,返回webp格式图片;反之,则显示原图。这种方式的优点在于,只需定期维护白名单即可,逻辑简单;缺点则在于不可扩展、不可测试、UA判断会出现不准确的情况。

Server处理中的另一种方式是通过读取 JavaScript 种下的 cookie来实现判断。这种方式的优点是表现稳定,访问速度更快,切换无压力。但缺点是,页面静态化会导致用户切换浏览器时不能自主更新,图片服务失效。比如用户用支持webp的浏览器A请求页面,这时缓存的静态页面均使用webp图片,但当该用户使用不支持webp的浏览器B时,访问网页则会出现请求不到图片的报错。

Client 处理,是美团云为美团主站提供的处理方式。在这种处理方式中,浏览器端发送的beacon webp 请求后,通过检测其加载情况来判定 webp 支持情况,然后浏览器写一个cookie。之后通过读取浏览器cookie判断是否支持webp,就可以进行下一步替换操作了。

2.替换图片过程中也是有两种处理方式:

在 server 端处理的优点是对下游开发者透明,缺点是静态页面的缓存数量会翻倍。

替换方式如下:

在 client 端处理可以比较好地应对页面静态化的情况,主要针对懒加载(非首屏)的图片进行处理,直接通过修改懒加载器来实现。
对非懒加载的图片暂时没有特别好的办法。目前,可用替换路径的方式来处理。

Client 处理实际上效果也是不错的,美团页面里90%以上的图片都是懒加载的,基本上都可以满足需求。对于大多数用户来说,采用Client 处理实现webp转换是个不错的选择。

既然提到图片这一块,我有忍不住想扯写些题外的tracking Pixel(像素追踪),几乎所有网站都会做数据的采集,上报统计。特别是我们做SSP、DSP广告这块需要获取例如

数据永远说的是实话,数据证明一切可能。如facebook广告投放的跨境电商朋友都会使用facebook Pixel(像素追踪)以获得各环节的精准数据。这样追踪数据后,我们才能投放广告后销量上去了,哪个才是效果最好的,哪个效果不好,进而通过多个数据对比,对广告进行合理的调整优化。

国内搜狗、网络、360、新浪都是用这种 tracking Pixel 方法,实际就是利用1px 的图片,在图片地址后缀拼接你需要的信息参数,浏览器在请求任何资源的时候会发送当前系统的数据,比如浏览器信息,操作系统信息,作为http请求头送过去,他们就能统计了。

为什么不用js请求统计?

并不是所有的页面都支持JS的!NoJSStats的实现机制就是网站分析中点击流数据获取的方式之一——Web Beacons,即在页面中嵌入一个1像素的透明图片,当该页面被浏览时,图片就会被请求加载,于是在后端的服务器日志中就会记录该图片的请求日志,这样就可以获得日志记录。

例如网络:

本文引用@美团云 提供的webP方法,感谢。

③ web前端开发都需要学什么

如果你是0基础学习web前端的话,你需要从基础开始,由浅入深,循序渐进。
首先,学习Web前端基础知识HTML5+CSS3、JS交互设计,这两部分内容是Web初级前端开发工程师需要掌握的;
其次,学习Node开发、前端框架,这两部分内容是Web前端中级开发工程师、全栈开发工程师、Vue中高级开发工程师、React初级开发工程师需要掌握的;
最后,学习小程序+数据可视化,这部分内容学习完成是全栈开发工程师、小程序开发工程师、数据可视化开发工程师需要掌握的。
除了理论知识,更重要的是实操项目,将理论技术点运用到实践中,这样才能达到学以致用!

④ web前端开发工程师需要掌握哪些技术

第一阶段:Web基础
1.HTML
知识要点:web工作原理、HTML4及HTML5、常见标签、相对路径与绝对路径、HTML5标签
2.CSS+布局
知识要点:CSS基本语法、基本选择器、复合选择器、背景图片、盒子模型、精灵图、常见网页布局、浮动定位、Flex布局、响应式布局、移动端适配、网页动画、CSS3新特性、Less预处理器
第二阶段:JavaScript
3.ECMA基础
知识要点:ECMA基本语法、数据类型、运算符、分支结构、循环结构、函数、常见内置对象的属性和方法、Array、Math、Date、String
4.DOM
知识要点:DOM模型、节点类型、节点的基本操作、JS操作样式表、克隆节点、获取坐标位置、获取元素尺寸、节点的各种属性和方法。
5.BOM+jQuery
知识要点:History、Location、Navigate、定时器、线程、事件循环、web工作原理、性能优化、事件对象、正则表达式、jQuery框架
第三阶段:企业级框架
6.vue框架基本语法
知识要点:vue基本语法、双向绑定、组件传值、条件渲染、列表渲染、事件处理、表单绑定、自定义事件、插槽、过渡、动画、动态路由、嵌套路由、编程式导航、导航守卫、路由懒加载、脚手架、生命周期、vuex、axios、ts、vue3
7.vue案例
知识要点:将知识点融会贯通到案例中。
8.react基本语法
知识要点:react简介、jsx语法、元素渲染、组件和props、state、生命周期、表单、条件渲染、组合继承、hooks、性能优化、rex
9.react案例
知识要点:将知识点融会贯通到案例中
新增内容:微信小程序及uni-app框架
知识要点:
小程序框架(配置/程序与页面注册/路由),开发者工具
小程序框架组件学习(基础/视图/表单/地图/媒体/导航/开发能力)
小程序框架组件学习(地图/媒体/导航/开发能力)
小程序API(基础/路由/界面/网络/数据缓存/位置服务)
小程序API(设备/媒体/开放接口/授权/登录/支付)
第四阶段:前端全栈
10.Node服务器与数据库及框架
知识要点:Node原生模块、跨域、安全校验、数据加密、数据库基本操作、express框架、koa框架
11.Node 项目周/WebPack
知识要点:需求、效果图、编码