随笔分类 - javaScriopt
摘要:spy-debugger安装、调试步骤 安装命令(先通过nrm切源,切到cnpm): 注:如果安装过程中出现如下错误,问题出在安装到一半的node_modules文件夹下,将该spy-debugger目录下该文件夹删除后,再执行上图安装命令即可成功 手机和PC保持在同一网络下(比如同时连到一个Wi-
阅读全文
摘要:栈是一种高效的数据结构,数据只能在栈顶添加或删除,所以这样操作很快,也很容易实现。栈的使用遍布程序语言实现的方方面面,从表达式求值到处理函数调用。接下来,用JavaScript实现一个栈的数据结构。 定义栈的操作 栈作为一种特殊的列表,只能从一端来进行访问,就像一摞盘子,放只能放在上面,拿也只能从上
阅读全文
摘要:本篇只是对Immutable.js的简单介绍,后续会继续分享其具体实践应用。 什么是Immutable Data? Immutable data encourages pure functions (data-in, data-out) and lends itself to much simple
阅读全文
摘要:基本原则 类数组为对象,但有一些数组的方法,用起来像数组,因为其本质为对象,也有对象的用法 属性要为索引(数字)属性,必须有length属性,最好加上push方法 举例子 var obj = { 0: 'a', 1: 'a', 2: 'a', 3: 'b', length: 4, push: Arr
阅读全文
摘要:一个内部函数除了可以访问自己的参数和变量,同时它也能自己把它嵌套在其中的父函数的参数与变量,通过函数字面量创建的函数对象包含一个连到外部上下文的连接 闭包是js的一个难点也是它的一个特色,是我们必须掌握的js高级特性,那么什么是闭包呢?它又有什么用呢? 我们都知道,js的作用域分两种,全局和局部,基
阅读全文
摘要:微信授权使用的是OAuth2.0授权的方式。主要有以下步骤: 第一步:用户同意授权,获取code 第二步:通过code换取网页授权access_token 第三步:刷新access_token(如果需要) 第四步:拉取用户信息(需scope为 snsapi_userinfo) 请求授权页面的构造方式
阅读全文
摘要:为了保证的可读性,本文采用意译而非直译。 1.Three.js 超过46K的星星,这个流行的库提供了非常多的3D显示功能,以一种直观的方式使用 WebGL。这个库提供了<canvas>、 <svg>、CSS3D 和 WebGL渲染器,让咱们在设备和浏览器之间创建丰富的交互体验。该库于2010年4月首
阅读全文
摘要:~我们知道的取反是 ! ,返回类型是boolean类型的,例如:!1==false;!0==true;等等 而~是按位取反,和Boolean没多大关系 来看看~1的计算步骤: 将1(这里叫:原码)转二进制 = 00000001按位取反 = 11111110发现符号位(即最高位)为1(表示负数),将除
阅读全文
摘要:用该属性获取页面 URL 地址: window.location 对象所包含的属性 属性描述 hash 从井号 (#) 开始的 URL(锚) host 主机名和当前 URL 的端口号 hostname 当前 URL 的主机名 href 完整的 URL pathname 当前 URL 的路径部分 po
阅读全文
摘要:nput框在输入切换中文输入法时的输入事件1、compositionstartcompositionstart事件只有在输入中文时才会触发,触发事件在input事件之前 2、compositionendcompositionend表示结束中文输入时触发的事件,不管最后输入的是不是中文都会触发 3、i
阅读全文
摘要:PhotoSwipe是一个JavaScript库,没有依赖项。要说唯一的依赖项那就是Vanilla.js(原生js),因此你可以在你的任何Web项目中使用,包括主流的Vue、React、Angular以及传统jQuery的项目。PhotoSwipe可以被用到各种大中小型项目当中,并且PC和移动端完美
阅读全文
摘要:可疑区域增加 try...catch 全局监控JS异常: window.onerror 全局监控静态资源异常: window.addEventListener 全局捕获没有 catch 的 promise 异常:unhandledrejection iframe 异常:window.error VU
阅读全文
摘要:评论区新增的坑 1、父元素设置了border-radius,子元素应用了transform,并且父元素设置了overflow:hidden,但是却失效? // 给父元素设置 { position:relative; z-index:1; } 2、设置input 文本框的 placeholder 的颜
阅读全文
摘要:原文:巧用 CSS 实现酷炫的充电动画 循序渐进,看看只使用 CSS ,可以鼓捣出什么样的充电动画效果。 画个电池 当然,电池充电,首先得用 CSS 画一个电池,这个不难,随便整一个: 欧了,勉强就是它了。有了电池,那接下来直接充电吧。最最简单的动画,那应该是用色彩把整个电池灌满即可。 方法很多,代
阅读全文
摘要:AOP(面向切面的编程)主要是将一些与核心业务逻辑模块无关的功能抽离出来,这些功能通常包括日志统计,安全控制,或者是异常处理等等。 我们要做的就是拓展Function.prototype来“动态植入”到业务的逻辑模块儿中,保持业务逻辑的纯净和高内聚。 现在我们有一个函数 var myFunc = f
阅读全文
摘要:实现动画效果的方法比较多,Javascript 中可以通过定时器 setTimeout 来实现,css3 可以使用 transition 和 animation 来实现,html5 中的 canvas 也可以实现。除此之外,html5 还提供一个专门用于请求动画的API,那就是 requestAni
阅读全文
摘要:每个函数都包含两个非继承而来的方法:apply()和call() 1.这两个方法的用途:在特定的作用域中调用函数,实际上等于设置函数体内this对象的值 (1)apply()方法接收两个参数:一个是在其中运行函数的作用域,里一个是参数数组(Array的实例或者arguments对象) functio
阅读全文
摘要:原文:https://juejin.im/post/5daeefc8e51d4524f007fb15#heading-119 1. 函数 1.1函数的3种定义方法 1.1.1 函数声明 //ES5 function getSum(){} function (){}//匿名函数 //ES6 ()=>{
阅读全文
摘要:效果图 原理 switch只有两个状态,开/关,跟input的checkbox一致,所以我们可以借助checkbox完成样式的切换; html 一个简单的input <input class="switch-component" type="checkbox"> 复制代码 css /* 背景层 */
阅读全文
摘要:Object.assign(target,source1,source2,...) 该方法主要用于对象的合并,将源对象source的所有可枚举属性合并到目标对象target上,此方法只拷贝源对象的自身属性,不拷贝继承的属性。 Object.assign方法实行的是浅拷贝,而不是深拷贝。也就是说,如果
阅读全文