手动实现一个new 本文部分转自:https://segmentfault.com/a/1190000022140993 前言new 大家肯定都不陌生,单身没有对象的时候就 new 一个,很方便。那么它在创建实例的时候,具体做了哪些操作呢?今天我们就来一起分析一下。 构造函数在介绍 new 之前,必须要知道什么是构造函数。构造函数和普通函数在写法上没有任何区别,当一个函数通过 new Fun() 调用时,就叫做构造函 2020-09-20
手动实现trim Q:实现一个函数 trim(str) 字符串前后去空格 12function trim(str) {}trim(" hello world "); // => hello world 思路使用正则匹配前后字符串使用 split 空格求一个数组,然后删除数组中空元素,再转为字符串 解答1234function trim(str) 2020-09-20
ES6,CommonJS 区别 本文转自:https://www.cnblogs.com/whm-blog/p/9750021.html es6 { export : ‘可以输出多个,输出方式为 {}’ , export default : ‘ 只能输出一个 ,可以与 export 同时输出,但是不建议这么做’, 解析阶段确定对外输出的接口,解析阶段生成接口, 模块不是对象,加载的不是对象, 可以单 2020-09-20
Gulp与Grunt 本文转自:https://www.jianshu.com/p/1a255e740710、https://juejin.im/post/6844903870456414216、https://segmentfault.com/a/1190000019650765 1. Gulp gulp 是基于 Nodejs 的自动任务运行器,能自动化的完成 javascript/coffee/sass/less/ 2020-09-19
webpack loader和plugin编写 本文转自:https://www.jianshu.com/p/0fc6bb85ef5b、https://juejin.im/post/6844903689442820110 webpack 中 loader 和 plugin 的区别一、webpack 的常见配置1234567891011121314151617181920212223242526272829303132333435363738co 2020-09-19
浏览器缓存,304 本文转自:https://juejin.im/post/6844903763665240072 浏览器缓存;缓存相关的字段(Etag 与 last-modified 对比区别)1. 前言浏览器缓存 是浏览器将用户请求过的静态资源(html、css、js),存储到电脑本地磁盘中,当浏览器再次访问时,就可以直接从本地加载了,不需要再去服务端请求了。但也不是说缓存没有缺点,如果处理不当,可能会导致服务端 2020-09-19
常见请求头、响应头 本文转自:https://juejin.im/post/6844903674183942152#heading-8、https://juejin.im/post/6844903957593063432请求头:**origin、referer、content-type、user-agent、expires、If-None-Match、If-Modified-Since**响应头:**cache-co 2020-09-19
常见的请求状态码 状态码告知从服务器端返回的请求结果 类别 原因短语 1XX Informational(信息性状态码) 接收的请求正在处理 2XX Success(成功状态码) 请求正在处理完毕 3XX Redirection(重定向状态码) 需要进行附加操作以完成请求 4XX Client Error(客户端错误状态码) 客户端错误,请求包含语法错误或服务器无法完成请求 5XX Se 2020-09-19
TCP和UDP的区别 本文转自:https://juejin.im/post/6844903800336023560 引言网络协议是每个前端工程师都必须要掌握的知识,TCP/IP 中有两个具有代表性的传输层协议,分别是 TCP 和 UDP,本文将介绍下这两者以及它们之间的区别。** 一、TCP/IP 网络模型计算机与网络设备要相互通信,双方就必须基于相同的方法。比如,如何探测到通信目标、由哪一边先发起通信、使用哪种语言 2020-09-19