随笔分类 - javascript
摘要:变异方法 push() 接收任意数量的参数,把它们逐个添加到数组末尾,并返回修改后数组的长度pop() 从数组末尾移除最后一项,减少数组的length值,然后返回移除的项shift() 移除数组中的第一个项并返回该项,同时数组的长度减1unshift() 在数组前端添加任意个项并返回新数组长度spl
阅读全文
摘要:filter、map、forEach filter filter() 方法创建一个新的数组,新数组中的元素是通过检查指定数组中符合条件的所有元素。 注意: filter() 不会对空数组进行检测。 注意: filter() 不会改变原始数组。 语法:array.filter(function(cur
阅读全文
摘要:转自:大转转FE 狸猫换太子 北宋真宗时,有李妃和刘妃两位小主都有了龙种,谁生了儿子,谁就能豪横。谁曾想刘妃不是个善茬,把剥了皮的狸猫换了李妃刚生完的孩子。天可怜见,执行任务的宫女人性未泯,将孩子送往八贤王处抚养,这才引出后来,包拯陈州放粮救李妃,仁宗认母家团圆。那位说了,好好的谈装饰器模式这怎么说
阅读全文
摘要:整理目前所用过的数组方法,学习了新增的es6方法。 1 arr.push() 从后面添加元素,返回值为添加完后的数组的长度 let arr = [1,2,3,4,5] console.log(arr.push(5)) // 6 console.log(arr) // [1,2,3,4,5,5] 2
阅读全文
摘要:babel 官方在 2018-08-27 发布了文章,babel 7 正式发布,距离 babel 6 相隔3年。 包含内容(官网cp): upgrade tool JavaScript 配置文件 babel.config.js 选择性的配置 overrides TC39 提案 支持 @babel/p
阅读全文
摘要:前言 由于各大浏览器并对es6的并没有完成支持,我们开发前端项目时需要使用Babel来将ES6代码编译为ES5。 配置.babelrc文件时一般配置为如下: { "presets": [ "es2015", "react", "stage-0" ], "plugins": [] } 这个配置文件的意
阅读全文
摘要:通信方式: > props(常用) > props和$emit(常用) > .sync(语法糖) > model(单选框和复选框场景可以使用) > $attr和$listeners(组件封装用的比较多) > provide和inject(高阶组件/组件库使用比较多) > eventBus(小项目中使
阅读全文
摘要:Date 是 JavaScript 中处理日期的对象。 它是值是以 1970.1.1 年 8:00 为初始值。 世界协调时间:UTC 创建日期对象可以通过构造函数 语法: new Date(); // 当前时间 new Date(value); // 如 new Date(1000*60*10);
阅读全文
摘要:1.Performance方法 Performance提供的方法可以灵活使用,获取到页面加载等标记的耗时情况。 2.Performance属性 Performance.timing属性对象提供了浏览器从打开网页到加载完成之间各个节点的耗时数据,包括重定向开始、DNS查询、浏览器响应数据、DOM解析等
阅读全文
摘要:数组去重,一般都是在面试的时候才会碰到,一般是要求手写数组去重方法的代码。如果是被提问到,数组去重的方法有哪些?你能答出其中的10种,面试官很有可能对你刮目相看。在真实的项目中碰到的数组去重,一般都是后台去处理,很少让前端处理数组去重。虽然日常项目用到的概率比较低,但还是需要了解一下,以防面试的时候
阅读全文
摘要:前端程序使用extjs写,在本地测试,发送请求到服务器时,发现存在跨域的问题,cookie也没有set成功,于是乎在这里整理一下解决过程 由于篇幅较长,不想看解决过程的可以翻到最后看总结1.跨域允许2.客户端无法携带跨域cookie3.因为加了withCredentials报文头,可是客户端不知道服
阅读全文
摘要:我们都知道for循环里要跳出整个循环是使用break,但在数组中用forEach循环如要退出整个循环呢?使用break会报错,使用return也不能跳出循环。 使用break将会报错: var arr = [1,2,3,4,5];var num = 3;arr.forEach(function(v)
阅读全文
摘要:在2014年,W3C公布了service worker的草案,service worker提供了很多新的能力,使得web app拥有与native app相同的离线体验、消息推送体验。 service worker是一段脚本,与web worker一样,也是在后台运行。作为一个独立的线程,运行环境与
阅读全文
摘要:1.forEach() 用法:array.forEach(function(item,index){}) 没有返回值,只是单纯的遍历 2.map() 用法:array.map(function(item,index){}) 遍历并对其进行操作,返回新数组,原数组不变 3.filter() 用法:ar
阅读全文
摘要:非简单请求不可重定向,包括第一个preflight请求和第二个真正的请求都不行。 简单请求可以重定向任意多次,但如需兼容多数浏览器,只可进行一次重定向。 中间服务器应当同样配置相关 CORS 响应头。 中间服务器设置 当跨域请求被重定向时,中间服务器返回的 CORS 相关的响应头应当与最终服务器保持
阅读全文
摘要:最近接到一个业务需求,需要做一个聊天信息的实时展示的界面,这就需要和服务器端建立webSocket连接,从而实现数据的实时获取和视图的实时刷新.在此将我的实现记录下来,希望可以给有同样需求的人一些帮助.废话少说,下面我就来讲一下我的实现过程: 前提 要进行文章中的代码的测试,需要服务端端开发人员配合
阅读全文
摘要:浏览器的渲染过程 本文先从浏览器的渲染过程来从头到尾的讲解一下回流重绘,如果大家想直接看如何减少回流和重绘,可以跳到后面。(这个渲染过程来自MDN) 从上面这个图上,我们可以看到,浏览器渲染过程如下: 渲染过程看起来很简单,让我们来具体了解下每一步具体做了什么。 生成渲染树 为了构建渲染树,浏览器主
阅读全文
摘要:学习函数式编程的过程中,我接触到了 Ramda.js。 我发现,这是一个很重要的库,提供了许多有用的方法,每个 JavaScript 程序员都应该掌握这个工具。 你可能会问,Underscore 和 Lodash 已经这么流行了,为什么还要学习好像雷同的 Ramda 呢? 回答是,前两者的参数位置不
阅读全文
摘要:在看别人代码时,发现有这么个写法:[].slice.call(arguments, 0),这到底是什么意思呢? 1、基础 1)slice() 方法可从已有的数组中返回选定的元素。 start:必需。规定从何处开始选取。如果是负数,那么它规定从数组尾部开始算起的位置。也就是说,-1 指最后一个元素,-
阅读全文
摘要:随着网站逐渐变成"互联网应用程序",嵌入网页的Javascript代码越来越庞大,越来越复杂。 网页越来越像桌面程序,需要一个团队分工协作、进度管理、单元测试等等......开发者不得不使用软件工程的方法,管理网页的业务逻辑。 Javascript模块化编程,已经成为一个迫切的需求。理想情况下,开发
阅读全文