自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(39)
  • 收藏
  • 关注

原创 ES6 箭头函数

ES6 允许使用“箭头”(=>)定义函数。 基本用法 // 只有一个参数 var f = v => v // 没有参数或多个参数就用圆括号代表参数部分 var f = () => 5 var sum = (num1,num2) => num1 + num2; // 箭头函数的代码块多余一条语句,就要使用大括号将它们括起来,并且使用 return 语句返回 var sum =...

2019-11-14 22:28:22 351

原创 2.5 this 词法

之前介绍的四条规则已经可以包含所有正常的函数。但是 ES6 中介绍了一种无法使用这些规则的特殊函数类型:箭头函数。 箭头函数并不是使用 function 关键字定义的,而是使用被称为“胖箭头”的 操作符 => 定义的。箭头函数不使用 this 的四种标准规则,而是根据外层(函数或者全局)作用域来决定 this。 箭头函数的词法作用域: function foo(){ // 返回一个箭...

2019-11-13 18:37:59 381

原创 2.4 this 绑定例外

在某些场景下 this 的绑定行为会出乎意料,你认为应当应用其他绑定规则时,实际上应用的可能是默认绑定规则。 被忽略的 this 如果把 null 或者 undefined 作为 this 的绑定对象传入 call、apply 或者 bind,这些值在调用时会被忽略,实际应用的是默认绑定规则: function foo(){ console.log(this.a) } var a = 2 ...

2019-11-13 17:58:47 330

原创 2.3 this 绑定规则的优先级

上篇《2.2 this 全面解析》了解到函数调用中 this 绑定的四条规则,找到函数的调用位置并判断应当应用哪条规则。这篇学习假设某个调用位置可以应用多条规则,就必须给这些规则设定优先级。 毫无疑问,默认绑定的优先级是四条规则中最低的,所以可以先不考虑它。 那么隐式绑定和显式绑定哪个优先级更高? function foo() { console.log(this.a) } var obj...

2019-11-06 14:34:04 421

原创 2.2 this 全面解析

一、调用位置 调用位置就是函数在代码中被调用的位置(而不是声明的位置)。 寻找调用位置就是寻找“函数被调用的位置”。 分析调用栈(就是为了到达当前执行位置所调用的所有函数)。上述的调用位置就在当前正在执行的函数的前一个调用中。 如何从(调用栈中)分析出真正的调用位置: 可以把调用栈想象成一个函数调用链,就像前面代码段的注释中所写的一样。(特点:麻烦、易出错) 使用浏览器的调试工具查看调用栈 ...

2019-11-03 14:47:37 302

原创 2.1 关于this

一、为什么要用 this 使用了this function identify() { return this.name.toUpperCase() } function speak() { var greeting = "Hello, I'm " + identify.call(this) console.log(greeting) } var me = { n...

2019-10-29 18:04:09 206

原创 1.5 作用域的闭包

当函数可以记住并访问所在的词法作用域时,就产生了闭包,即使函数是在当前词法作用域之外执行。 举个例子: function foo(){ var a = 2 function bar(){ console.log(a) } return bar } var baz = foo() baz() //2 解释: 函数bar()的词法作用域能够访问foo()的内部作用域 retur...

2019-09-30 23:39:22 221

原创 TABLE 动态合并单元格

动态合并单元格 目标效果: 结构说明: 展示结构为大订单内包裹很多个小订单 小订单内包含相应的商品信息 每个小订单的下单人信息、订单金额、备注、订单状态、订单操作都是相同的 数据结构 { "error_code": 1, "error_msg": "", "data": { "page_no": "1", "page_num": "10", "coun...

2019-08-24 15:49:57 4126

原创 UEditor 直接复制黏贴图片为空的问题

UEditor 直接复制黏贴图片为空的问题问题解决方案 问题 步骤:复制淘宝的图文详情,直接黏贴到百度富文本编辑器 现象:只能复制文字,图片相关内容为空,查看 html 代码,复制的内容不包含 img 标签 解决方案 1.找到ueditor.config.js文件,搜索catchRemoteImageEnable字段,设置为false //设置远程图片是否抓取到本地保存 cat...

2019-07-15 20:03:13 2356 2

原创 第二章 词法作用域

第二章 词法作用域词法阶段查找欺骗词法`eval` :可以在运行期修改书写期的词法作用域`with` : 通常被当作重复引用同一个对象中的多个属性的快捷方式,可以不需要重复引用对象本身。性能 作用域有两种主要的工作模型: 词法作用域 动态作用域 词法阶段 理解词法作用域及其名称来历的基础: 大部分标准语言编译器的第一个工作阶段叫词法化(单词化)。词法化的过程会对源代码中的字符进行检查,...

2019-04-24 10:16:45 258

原创 第一章 作用域是什么

1.编译原理 JavaScript 是一门编译语言。 传统编译语言中,程序中的源代码在执行之前会经历三个步骤,统称为“编译”: 分词/词法分析:将由字符组成的字符串分解成有意义的代码块,这些代码块被称为词法单元。 解析/语法分析:将词法单元流(数组)转换成一个由元素逐级嵌套所组成的代表了程序语法结构的树,这个树被称作“抽象语法树”(AST)。 代码生成:将 AST 转换为可执行代码的过程。 J...

2019-04-10 17:26:42 183

原创 微信小程序:公告字幕滚动播放(文字跑马灯效果)

一、需求 公告文字仅限200字 公告内容仅限一行文字显示 公告内容持续滚动 二、解决思路 使用动画API(Animation.translate),完成移动动画 使用定时器API(setInterval),完成循环播放动画 注意: 微信小程序的动画APItranslate,只有动画效果还原后,才能进行第二次动画 根据第一条,需要两个定时器: 第一个定时器:用于循环复原动画效果 第二个定时...

2018-11-21 20:38:39 33044 20

原创 CSS 属性:caret-color

一、caret-color 属性作用 caret-color : 改变输入框光标颜色,同时又不改变输入框里面的内容的颜色 caret 表示‘插入符号’,指处于内容可插入状态的光标 input{ color:blue; caret-color: red; } caret-color 属性不仅对于原生的输入表单控件有效,设置contenteditable的普通标签也适用。 c...

2018-09-06 22:07:56 14598 2

原创 Flex 布局之基本语法

一、Flex 布局的作用 Flex 是 Flexible Box 的缩写,意为“弹性布局”,用来为盒状模型提供最大的灵活性。 任何一个容器、行内元素都可以指定为 Flex 布局; Webkit 内核的浏览器,必须加上 -webkit前缀; 使用 Flex 布局以后,子元素的float、clear和vertical-align属性将会失效。 二、基本概念 采用 Flex 布局的元素, 称...

2018-07-19 17:12:55 280

原创 微信小程序——自定义组件时,编译报`Component is not found in path '...'`

问题描述: 在微信小程序中自定义组件时,编译报Component is not found in path '...' VM4941:1 jsEnginScriptError Component is not found in path "components/watermark/watermark" (using by "pages/login/login") Error: Componen...

2018-07-13 09:56:44 78669 14

原创 查缺补漏——HTTP 状态码

一、状态码的职责是负责描述客户端向服务器端发送请求时,描述返回的请求结果。 二、状态码的类别: 状态码 类别 原因短语 1XX 信息性状态码 接受的请求正在处理 2XX 成功状态码 请求正常处理完毕 3XX 重定向状态码 需要进行附加操作以完成请求 4XX 客户端错误状态码 服务器无法处理请求 5XX ...

2018-07-02 10:02:14 319

原创 安装 SASS 失败,提示‘mkmf.rb can't find header files for ruby at /usr/share/include/ruby.h’

错误提示 [root@iz2ze6hzcn38yurhan7re4z ~]# sudo su -c "gem install sass" Building native extensions. This could take a while... ERROR: Error installing sass: ERROR: Failed to build gem native exten...

2018-04-02 05:50:05 9484 4

转载 HTML 空格位占位符

HTML 空格位占位符   —— 普通的英文半角空格;  、 、&#xAO;、no-break space —— 普通的英文半角空格但不换行   —— 中文全角空格 (一个中文宽度)  、&ensp —— en 空格 (半个中文宽度)  、&emsp...

2018-03-19 09:58:04 9763

原创 错误码:Uncaught TypeError: Cannot read property 'field' of undefined

错误码:Uncaught TypeError: Cannot read property ‘field’ of undefined具体错误信息:Uncaught TypeError: Cannot read property 'field' of undefined at HTMLTableCellElement.<anonymous> (bootstrap-table.js:506)

2018-03-18 01:23:22 11459

转载 问题:什么是构建工具?什么是模块化?

什么是构建工具 构建工具是一个把源代码生成可执行应用程序的过程自动化的程序(例如 Android App生成 apk)。构建包括编译、链接以及把代码打包成可用的或可执行的形式。 构建的自动化基本是编写或使一大部分任务自动执行的一个动作(而这些任务则是软件开发者的日常): 下载依赖; 将源代码编译成二进制代码; 打包生产二进制代码; 进行单元测试; 部署到生产系统。 原文链接:https:...

2018-03-05 11:36:44 1434

原创 webpack概念以及配置文件详解

Webpack 概念 本质上,webpack 是一个现代 JavaScript 应用程序的静态模块打包器(module bundler)。当 webpack 处理应用程序时,它会递归地构建一个依赖关系图(dependency graph),其中包含应用程序需要的每个模块,然后将所有这些模块打包成一个或多个 bundle。 模块(Modules): 在模块化编程中,将程序分解成离散...

2018-03-02 14:38:49 6011

原创 通用JS工具类封装——网络数据请求功能、获取服务端接口 url、参数功能

代码片段 'use strict'; var conf = { serverHost = '' }; var _mm = { //网络请求功能 request : function(param){ var _this = this; $.ajax({ type : param.method || 'g...

2018-02-23 14:24:24 2235 1

原创 CSS —— 浮动

来源 “浮动”一词源自文档 “HTML2.0 的拓展”,其中指出: ALIGN 选项有所增补,对此需要做一些解释。首先来看值 “left” 和 “right”。可以把这些对齐方式看作全新的浮动图像类型。 过去,只可能浮动图像。但 CSS 允许浮动任何元素,从图像到段落再到列表,所有元素都可以浮动。 浮动的属性 属性名 :float 值 : left | right | n...

2018-02-15 22:12:25 398

原创 XHTML标签 —— div

1.div 是 XHTML 中指定的、专门用于布局设计的容器对象。 2.div标签只是一个标识,作用是把内容标识成一块区域,并不负责其他事情。 3.div是一个block对象(块对象/块级元素)。块状div说明,它在页面中用于大面积、大区域的块状排版。 4.div本身与样式没有任何关系。样式需要CSS来实现,应当说div对象从本质上实现了与样式分离。 5.div可以分层进行嵌套使用,嵌套的

2018-01-25 22:42:40 831

原创 CSS常用布局栗子

一列固定宽度 一列式布局是所有布局的基础,也是最简单的布局形式。一列式布局是一种固定的宽度的布局样式,一般是一个带有header、center、和footer 三个并列的布局。 XHTML: div id="layout">1列固定宽度div> CSS: /*1列固定宽度*/ #layout{ background-color: #cccccc;

2018-01-25 17:07:29 433

原创 Sublime Text 3 快捷键汇总(持续更新)

快捷键Ctrl+Shift+P —— 打开命令框 Ctrl+Shift+D —— 复制光标所在整行内容,并插入下一行 Ctrl+Shift+K —— 删除整行(注意:收够输入法可能占用该快捷键)Alt+F3 —— 可一次性选择全部的相同文本进行同时编辑Tab —— 向右缩进 Shift+Tab —— 向左缩进Esc

2017-12-27 14:39:41 293

原创 事件委托(内存和性能)

导语 在 JavaScript 中,添加到页面上的事件处理程序数量将直接关系到页面的整体运行性能。导致这一问题的原因是是多方面的: 1.每个函数都是对象,都会占用内存;内存中的对象越多,性能就越差; 2.必须事先指定所有事件处理程序而导致的 DOM 访问次数,会延迟整个页面的交互就绪时间。

2017-12-13 14:58:35 852 1

原创 事件绑定(事件处理程序)

事件处理程序(事件绑定):响应某个事件的函数就叫做事件处理程序(或事件侦听器)。为事件指定处理程序的方式:1.HTML 事件处理程序:某个元素支持的每种事件,都可以使用一个与相应事件处理程序同名的 HTML 特性来指定。这个特性的值应该是能够执行的 JavaScript 代码。示例代码:<input type="button" value="Click Me" onClick="alert('Cli

2017-12-13 11:38:37 983

原创 事件流(事件冒泡、事件捕获以及DOM事件流)

事件流:描述的是从页面中接收事件的顺序。事件冒泡:IE的事件流叫做事件冒泡,即事件开始时由最具体的元素(文档中嵌套层次最深的那个节点)接收,然后逐级上传播到较为不具体的节点(文档)。示例代码:<!DOCTYPE html> <html> <head> <title>Event Bubbing Example</title> </head> <body> <div id="myDiv"

2017-12-12 15:42:11 3100

原创 或操作(||)和与操作(&&)的执行顺序以及返回结果

逻辑与(&&)var result = true && false; (一)逻辑与的真值表(有假即假) 第一个操作数 第二个操作数 结果 true true true true false false false true false false false false (二)逻辑与操作可以应用于任何类型的操作数。在有一个操作数不是布尔值的情

2017-12-05 12:13:56 38416 6

原创 BOM——window对象之窗口大小

IE9+、Firefox、Safari、Opera、和 Chrome 均提供4个属性:innerWidth、innerHeight、outerWidth 和 outerHeight。1.在IE9+、Firefox、Safari中,outerHeight/outerWidth返回浏览器窗口本身的大小(无论是从最外层的 window 对象还是从某个框架访问。)2.在 Opera 中,outerHeig

2017-11-30 19:02:33 1010

原创 Html代码中的标签换行造成间距问题

目标效果:问题出现:问题代码:Html代码: 自定义房间号: 进入 CSS代码: #hall_div_operation{ clear: both; width: 389px; height: 60px; margin-top: 10px; } .hall_operation .label_input{ float: left; fon

2017-11-30 14:29:16 23501

原创 最有用的BOM对象之一——location对象

location对象提供了与当前窗口中加载的文档有关的信息,还提供了一些导航功能。location对象既是window对象的属性,也是document对象的属性(即window.location和document.location引用的是同一个对象)。location对象的用处不只表现在它保存着当前文档的信息,还表现在它将URL解析为独立的片段,让开发人员可以通过不同的属性访问这些片段。 属性名

2017-11-27 16:12:34 726

原创 浏览器旧版本下载地址汇总——持续更新

火狐浏览器各版本下载地址(官方):http://ftp.mozilla.org/pub/mozilla.org//firefox/releases/

2017-11-23 10:47:30 2059

转载 Hogan

Hogan 的简介1.模板原理:将模板文件和数据通过模板引擎生成最终的HTML代码; 2.引擎核心: 利用正则表达式分解出普通字符和模板标识符; 将模板标识符转换成普通的语言表达式; 生成待执行语句; 将数据填入执行,生成最终的字符串。 3.Hogan:是一个非常简单的模板引擎,用 Hogan 渲染 html 模板不用操作

2017-11-21 16:22:04 1473

原创 Vim 编辑器(以在命令行下编辑 .gitignore 文件为例)

1.进入 Vim 编辑器 $ vim .gitignore 以下为进入 Vim 编辑器界面: 2.按 WIN+I 进入插入模式,这个模式下才能编辑该文件; 3.输入符合 .gitignore 文件的忽略格式的内容(以下配置的内容表示 git 不在跟踪以下文件/文件夹==提交文件的时候,以下内容不会被提交):    (1)/dis/    —— 过滤整个文件夹    (2)*.

2017-10-23 16:21:00 2552

原创 NPM

1.NPM 是什么 NPM 官网:https://www.npmjs.com/ NPM 是随 NodeJs 一同安装的 JavaScript 的包管理器。 安装完 NodeJs ,在 cmd 下可以使用命令查看其版本。 C:\Users\Administrator>npm -v 2.15.8 2.NPM 常用指令 1.全局安装——可以直接在命令行使用。 npm install

2017-10-20 15:49:46 1529

原创 npm install 错误信息:npm ERR! Windows_NT 6.1.7601

错误信息: Administrator@RDW9ENH8W4DMER2 MINGW64 /e/mygit/mmall-fe (mmall_v1.0) $ npm install --save-dev file-loader npm WARN peerDependencies The peer dependency webpack@^2.0.0 || ^3.0.0 included from fi

2017-10-20 15:29:38 4938

原创 错误码:events.js:141 throw er; // Unhandled ‘error’ event—解决办法

错误码:events.js:141 throw er; // Unhandled ‘error’ event—解决办法具体错误信息:dev events.js:141 throw er; // Unhandled 'error' event ^Error: listen EADDRINUSE 127.0.0.1:8088 at Object.exports

2017-10-19 17:11:16 16824

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除