博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

java后端人员眼里的前端技术---v1

Posted on 2021-04-20 23:04  海绵谷  阅读(73)  评论(0编辑  收藏  举报
  1. ajax技术,学名叫做网页异步刷新技术;整个ajax技术的基础是XMLHttpRequest,经常用到的请求方式是get/post。
  2. get和post请求的区别?两者都是HTTP协议,区别1数据传送量:get有限制而post无限制;区别2请求头和请求体:get请求没有请求体而post有;区别3:服务端响应次数,get是一次请求响应一次,而post是先发送head,服务端响应成功后再发送请求体,服务端再次响应请求。
  3. 既然说到Http协议,那么我们在开发中还会接触到的协议有SSH\FTP\SSL\TTL\HTTPS\UDP\TCP;HTTP协议主要是浏览器端向服务端发送请求的协议。UDP是一种广播协议、无连接的协议、不安全,一对多,而TCP是一种面向连接的、可靠的、基于字节流的传输层通信协议,这里有三次握手之后,才会发送数据;只能点对点。
  4. Thymeleaf 技术
    模版渲染、主要是一些标签、这里自己做过定义标签,通过实现AbstractProcessorDialect、AbstractElementTagProcessor 完成。
    标签参考:https://www.cnblogs.com/ngLee/p/14058911.html
    自定义标签参考:https://www.cnblogs.com/ngLee/p/14679179.html
    5.jquery技术
    主要是一些选择器,以及使用一些API,比如数组的 $.inArray(ele,arr),$.isEmptyObject(obj) 等;
    参考:https://www.cnblogs.com/ngLee/p/14471515.html
    https://www.cnblogs.com/ngLee/p/14257032.html
    6.前端代码优化技巧
/**
 * @desc  如果if-else太多,考虑使用伪策略模式
 * @author ngLee
 * @date 2021/4/20 22:47
 */
function test(flag) {
    if(flag == "ts"){
        do1();
    }else if(flag == "tl"){
        do2();
    }else if(flag == "su"){
        do3();
    }
}
var test2 = {
    ts:function () {
        do1();
    },
    tl:function () {
        do2();
    },
    su:function () {
        do3();
    }
};
//调用方式
test("su");
test2['su']();
1.必须减少全局变量的使用,不然会越来越难维护
2.除非必要尽量做到每一个函数都有返回值,不要在函数里做一些数据改变,函数功能单一。
3.减少网络请求流量,减少一些ajax请求,尽量加缓存

7.ie8下startWith、数组的indexOf不兼容,在使用一些不熟的API时,建议在can i use https://www.caniuse.com/ 看下兼容性。