Gulp是什么? Gulp是一个工作流的构建系统,开发者可以使用它在网站开发过程中自动执行常见任务.Gulp是基于Node.js构建的,因此Gulp源文件和你用来定义任务的Gulp文件都被写进了JavaScript(或者CoffeeScript)里.前端开发工程师还可以用自己熟悉的语言来编写任务去lint JavaScript和CSS.解析模板以及在文件变动时编译LESS文件(当然这些只是一小部分例子). Gulp本身虽然不能完成很多任务,但它有大量插件可用,开发者可以访问插件页面或者在npm搜…
今天介绍webpack怎么编译ES6的各种函数和语法.敲黑板:这是webpack4版本哦, 有一些不同于webpack3的地方. >>> 本节课源码 >>> 所有课程源码 1. 了解babel 说起编译es6,就必须提一下babel和相关的技术生态: babel-loader: 负责 es6 语法转化 babel-preset-env: 包含 es6.7 等版本的语法转化规则 babel-polyfill: es6 内置方法和函数转化垫片 babel-plugin-tr…
背景 随着互联网的高速发展,信息安全问题已经成为企业最为关注的焦点之一,而前端又是引发企业安全问题的高危据点.在移动互联网时代,前端人员除了传统的 XSS.CSRF 等安全问题之外,又时常遭遇网络劫持.非法调用 Hybrid API 等新型安全问题.当然,浏览器自身也在不断在进化和发展,不断引入 CSP.Same-Site Cookies 等新技术来增强安全性,但是仍存在很多潜在的威胁,这需要前端技术人员不断进行“查漏补缺”. 前端安全 近几年,美团业务高速发展,前端随之面临很多安全挑战,因此积…
判断 js 类型的方式 1. typeof 可以判断出'string','number','boolean','undefined','symbol' 但判断 typeof(null) 时值为 'object'; 判断数组和对象时值均为 'object' 2. instanceof 原理是 构造函数的 prototype 属性是否出现在对象的原型链中的任何位置 function A() {} let a = new A(); a instanceof A //true,因为 Object.get…
Vue 双向绑定原理        mvvm 双向绑定,采用数据劫持结合发布者-订阅者模式的方式,通过 Object.defineProperty()来劫持各个属性的 setter.getter,在数据变动时发布消息给订阅者,触发相应的监听回调. 几个要点: 1.实现一个数据监听器 Observer,能够对数据对象的所有属性进行监听,如有变动可拿到最新值并通知订阅者 2.实现一个指令解析器 Compile,对每个元素节点的指令进行扫描和解析,根据指令模板替换数据,以及绑定相应的更新函数 3.实现…
实现 new 方法 /* * 1.创建一个空对象 * 2.链接到原型 * 3.绑定this值 * 4.返回新对象 */ // 第一种实现 function createNew() { let obj = {} // 1.创建一个空对象 let constructor = [].shift.call(arguments) // let [constructor,...args] = [...arguments] obj.__proto__ = constructor.prototype // 2.…
背景 字节各类业务拥有众多用户群,作为字节前端性能监控 SDK,自身若存在性能问题,则会影响到数以亿计的真实用户的体验.所以此类 SDK 自身的性能在设计之初,就必须达到一个非常极致的水准. 与此同时,随着业务不断迭代,功能变得越来越多,对监控的需求也会变得越来越多.例如,今天 A 业务更新了架构,想要自定义性能指标的获取规则,明天 B 业务接入了微前端框架,需要监控子应用的性能.在解决这些业务需求的同时,我们会不断加入额外的判断逻辑.配置项.同时由于用户的电脑性能.浏览器环境的不同,我们又要解…
使用babel编译ES6 babel是一个工具,可以通过多个平台,让js文件从ES6转化成ES5,从而支持一些浏览器并未支持的语法. Insall babel $ sudo npm install babel -g #全局安装 $ babel demo.js -o demo-compile.js #编译并产出 当然它还支持grunt/gulp和node和meteor....这里就不列举,如何在这些地方使用了,可以自行查阅其官网:babel 完成这些操作后,我们就可以开始我们的ES6的学习之旅.…
转自:http://www.cnblogs.com/gispeng/archive/2008/11/28/1342758.html     ArcGIS_系列视频教程::精品大放送 文件名: ArcGIS Server安装.部署.开发实例0418.vcm 下载链接:文件名: ArcGIS Server 9.2的概要及其新特性.vcm          下载链接:文件名: ArcGIS Server 9.2 .net ADF开发简要.vcm       下载链接:文件名: ArcGIS Engin…
项目demo地址https://github.com/aushion/webpack_reac_config 1.打开命令提示窗口,输入 mkdir react_test cd react_test npm init 2.会在文件夹根目录生成package.json文件,同时我们的项目结构如下 app index.js build bundle.js(自动生成) index.html package.json webapck.config.dev.js(开发环境配置) webpack.confi…