19
1-解决跨域问题的方法?
动态在页面中创建一个script 标签, 使其src 属性指向后端数据接口,后端数据接口必须返回一个js 函数的调用字符串( 如cb(‘{“name”:”zs”,”age”:18}’)),
将要返回给前端的json 数据作为函数的实参, 当script 标签加载完毕后会在浏览器中执行后端返回的函数调用,所以前端必须事先对调用的函数进行声明.
因为函数是在js 中声明的, 所以可以在函数内部拿到服务端调用的时候传入的实参, 所以就间接实现了跨域请求数据.
2-提交请求 get 和 post 的区别?
get是将要传递的参数拼接在url中进行传递,传递数据量少,不安全。
post是将传递的参数放在请求体里传递,携带数据量大,相对安全,要提交一些敏感数据(比如登录),上传文件时,必须使用post请求.
3-什么是渐进增强和优雅降级?
渐进增强 progressive enhancement:
针对低版本浏览器进行构建页面,保证最基本的功能,然后再针对高级浏览器进行效果、交互等改进和追加功能达到更好的用户体验。
优雅降级 graceful degradation:
一开始就构建完整的功能,然后再针对低版本浏览器进行兼容。
4-针对页面性能优化,有哪些方案?
资源压缩与合并
1. html压缩
html代码压缩就是压缩这些在文本文件中有意义,但是在HTML中不显示的字符,包括空格,制表符,换行符等,还有一些其他意义的字符,如HTML注释也可以被压缩。
如何进行html压缩:
使用在线网站进行压缩(开发过程中一般不用)
nodejs 提供了html-minifier工具
后端模板引擎渲染压缩
2. css代码压缩:
css代码压缩简单来说就是无效代码删除和css语义合并
如何进行css压缩:
使用在线网站进行压缩(开发过程中一般不用)
使用html-minifier工具
使用clean-css对css压缩
非核心代码异步加载异步加载的方式

浙公网安备 33010602011771号