自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

lvff的博客

小白-进阶

  • 博客(28)
  • 资源 (3)
  • 收藏
  • 关注

原创 jQuery-1.11.3源码中的判断数据类型

32 var class2type = {};34 var toString = class2type.toString;  290 type: function( obj ) {291 if ( obj == null ) {292 return obj + "";293 }294 return typeof obj ===...

2018-02-11 19:08:22 192

转载 JavaScript原型彻底理解2---继承中的原型链

一、继承的概念​ 继承是所有的面向对象的语言最重要的特征之一。大部分的oop语言的都支持两种继承:接口继承和实现继承。比如基于类的编程语言Java,对这两种继承都支持。从接口继承抽象方法 (只有方法签名),从类中继承实例方法。​ 但是对JavaScript来说,没有类和接口的概念(ES6之前),所以只支持实现继承,而且继承在 原型链 的基础上实现的。等了解过原型链的概念之后,你会发

2018-01-30 14:27:21 189

转载 JavaScript中原型对象的彻底理解

一、什么是原型原型是Javascript中的继承的继承,JavaScript的继承就是基于原型的继承。1.1 函数的原型对象​ 在JavaScript中,我们创建一个函数A(就是声明一个函数), 那么浏览器就会在内存中创建一个对象B,而且每个函数都默认会有一个属性 prototype 指向了这个对象( 即:prototype的属性的值是这个对象 )。这个对象B就是函

2018-01-30 13:43:06 179

原创 解读jQuery-1.11.3源码 - 1 . 整体架构

(function(global,factory){ factory(global)}(typeof window!=='undefined'?window:this,function(){ var jQuery=function(){ return {} } window.jQuery=window.$=jQuery; return jQuer...

2018-01-29 15:42:08 390

原创 解读jquery-1.11.3源码之rtrim = /^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g

解读 rtrim = /^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g 正则:这个正则是jquery的trim的去掉前后空格的:\s:空格\uFEFF:字节次序标记字符(Byte Order Mark),也就是BOM,它是es5新增的空白符\xA0:禁止自动换行空白符,相当于html中的 参考文档

2018-01-29 11:38:34 2191

转载 ECMAScript 5(ES5)中bind方法简介

一直以来对和this有关的东西模糊不清,譬如call、apply等等。这次看到一个和bind有关的笔试题,故记此文以备忘。  bind和call以及apply一样,都是可以改变上下文的this指向的。不同的是,call和apply一样,直接引用在方法上,而bind绑定this后返回一个方法,但内部核心还是apply。  直接看例子:12

2018-01-08 14:46:45 685

原创 vue-template

在用模板时一直只显示第一个标签内容,原来vue2.0后需要加一个根元素,vue1.0是不需要的<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equ

2017-11-16 15:52:57 458

原创 Vue实现tab切换

<!DOCTYPE html><html><head lang="en"> <meta charset="UTF-8"> <script src="https://unpkg.com/vue"></script> <style> *{margin:0;padding:0;} body{padding:15px;} a{tex

2017-08-10 18:25:07 2342

原创 ES6 - let 命令

1、基本用法 ES6新增了let命令,用来声明变量。它的用法类似于var,但是所声明的变量,只在代码块内有效:{ let a = 10; var b = 1;}a // Uncaught ReferenceError: a is not definedb // 1上面代码在代码块中,分别用let和var 声明了两个变量。在代码块外调用这两个变量,结果let声明的变量报错,va

2017-07-05 16:09:58 232

翻译 作为前端,你会选择哪种格式的图片

图片优化是站内优化不可回避的一块所在。而常见的图片格式有jpg、gif、png、bmp等,对于一个合理的网页来说,选择合适的图片格式十分重要。 JPG:它属于一种压缩图片,是一种大小与质量平衡的压缩图片格式,(低的压缩比 - 高的图片质量:文件的大小便是大的;高的压缩比 - 低的图片质量:文件的大小便是低的)。jpg一般用在允许轻微失真的像素色彩丰富的图片中,它不适用于做简单色彩(色调少)的图片。

2017-06-12 09:45:07 2913

原创 JavaScript中的运算符

下表是按照运算符的优先级排序的,前面的运算符优先级要高于后面的运算符优先级。被水平分割线分割开来的运算符具有不同的优先级标题为A的列表示运算符的结合性,L(从左至右)或R(从右至左),标题为N的列表表示操作数的个数。标题为‘类型’的列表示期望的操作数类型,以及运算符的结果类型(在‘->’符号之后)。 操作数的个数 运算符可以根据其操作数的个数进行分类。JavaScript中的大多数运算符是一

2017-06-07 16:25:43 360

原创 JavaScript作用域链

JavaScript中全局变量在程序中始终都是有定义的。局部变量在声明它的函数体内以及其所嵌套的函数内始终是有定义的。 如果将一个局部变量看作是自定义实现的对象的属性的话,那么可以换个角度来解读变量作用域。 每一段JavaScript代码(全局代码或函数)都有一个与之关联的作用域链。这个作用域链是一个对象列表或者链表,这组对象定义了这段代码‘作用域中’的变量。当JavaScript需要查找变量x

2017-06-07 14:30:22 230

原创 函数作用域和声明提前

在一些类似C语言的编程语言中,花括号内的每一段代码都具有各自的作用域,而且变量在声明他们的代码段之外是不可见的,我们称之为块级作用域。而JavaScript中没有块级作用域。JavaScript取而代之地使用了函数作用域:变量在声明的函数体以及这个函数体嵌套的任意函数体内都是有定义的。 在如下所示的代码中,在不同位置定义了变量i,j和k,它们都在同一个作用域内 - 这三个变量在函数体内军事有定义的

2017-06-07 11:34:47 304

原创 JavaScript类型转换

*空单元格表示不必要也没有执行转换 值 转换为 字符串 数字 布尔值 对象 undefined ‘undefined’ NaN false throws TypeError null ‘null’ 0

2017-06-03 15:14:35 251

原创 JavaScript - 不可变的原始值和可变的对象引用

JavaScript中的原始值(undefined、null、布尔值、数字和字符串)与对象(包括数组和函数)有着根本区别。 原始值是不可更改的:任何方法都无法更改一个原始值。对数字和布尔值来说显然如此 - 改变数字的值本身就说不通,而对于字符串来说就不那么明显了,因为字符串看起来像由字符组成的数组,我们期望可以通过指定索引来修改字符串中的字符。实际上,JavaScript是禁止这样做的。字符串中所

2017-06-03 10:34:38 472

原创 JavaScript中的包装对象

JavaScript对象是一种复合值:它是属性或已命名值的集合。通过‘.’符号来引用属性值。当属性值是一个函数的时候,称其为方法。通过o.m()来调用对象o中的方法。 我们看到字符串也同样具有属性和方法:var s="hello world"; //一个字符串var word=s.substring(s.indexOf(" ")+1,s.length); //使用字符串的属性和方法字符串既然不是

2017-06-03 10:23:04 243

原创 JavaScript中的全局对象

全局对象在JavaScript中有着重要的用途:全局对象的属性是全局定义的符号,JavaScript程序可以直接使用。当JavaScript解释器启动时(或任何Web浏览器加载新页面的时候),他将创建一个新的全局对象,并给它一组定义的初始属性:全局属性:比如undefined、Infinity和NaN全局函数:比如isNaN()、parseInt()和eval()构造函数:比如Date()、Re

2017-06-02 17:34:17 573

原创 JavaScript中的真值和假值

任意JavaScript的值都可以转换为布尔值,下面这些值会被转换成false:undefinednull0-0NaN"" //空字符转所有其他值,包括所有对象(数组)都会转换成true。false和上面6个可以转换成false的值有时称作‘假值’,其他值称为‘真值’。

2017-06-02 17:17:54 1392

原创 JavaScript数据类型 - 数字

和其他编程语言不同,JavaScript不区分整数值和浮点数值,JavaScript中的所有数字均用浮点数值表示。然而需要注意的是,JavaScript中实际的操作则是基于32位整数。 当一个数字直接出现在JavaScript程序中,我们称之为数字直接量。JavaScript支持多种格式的数字直接量。 整型直接量 在JavaScript程序中,用一个数字序列表示一个十进制整数。031000

2017-06-02 16:55:01 306

原创 JavaScript中的数据类型

JavaScript的数据类型分为两类:原始类型 和 对象类型。 原始类型 包括:数字Number、字符串String、布尔值Boolean 两个特殊的原始值:null(空)和 undefined(未定义) 对象类型 包括:object 两个 特殊的对象:数组Array 和 函数Function

2017-06-02 16:46:36 208

原创 JavaScript可选的分号

和其他许多编程语言一样,JavaScript使用分号(;)将语句分隔开,这对增强代码的可读性和整洁性是非常重要的,缺少(;)分隔符,一条语句的结束就成了下一条语句的开始,反之亦然。在JavaScript中,如果语句各自独占一行,通常可以省略语句之间的分号。关于JavaScript中可选分号的问题有几个细节需要注意。 如下代码,因为两条语句用两行书写,第一个分号是可以省略的:a=3;b=4;如果按

2017-06-02 15:26:09 817

原创 JavaScript:名字和版本

JavaScript是由Web发展初期的网景(Netscape)公司创建。“JavaScript”是Sun Microsystem公司(现在的Oracle)的注册商标,用来特指网景(现在的Mozilla)对这门语言的实现。网景将这门语言作为标准提交给了ECMA - 欧洲计算机制造协会 - 由于商标上的冲突,这门语言的标准版本改了一个丑陋的名字“ECMAScript”。同样由于商标的冲突,微软对这门语

2017-06-01 21:23:36 359

原创 CSS属性列表 - 布局属性

属性 版本 简介 display CSS2/3 设置或检索对象是否及如何显示 float CSS1 该属性的值指出了对象是否及如何浮动

2017-06-01 19:25:25 533

原创 CSS属性列表 - 定位属性

属性 版本 简介 position CSS2/3 检索对象的定位方式 z-index CSS2 检索或设置对象的层叠顺序

2017-06-01 16:24:58 343

原创 HTML4.0和HTML5 事件之间的差异

HTML 元素可拥有事件属性,这些属性在浏览器中触发行为,比如当用户单击一个 HTML 元素时启动一段 JavaScript。下面列出的事件属性,可以把它们插入 HTML 标签来定义事件行为。 属性 值 描述 4 5 onabort script  发生

2017-06-01 14:08:11 422

原创 HTML4.0和HTML5 属性之间的差异

HTML标签拥有属性。您可以在每个标签的参考页中找到相应的特殊属性。这里列出的属性是通过每个标签的核心属性和语言属性(有个别例外)。 HTML4.0中不再支持的属性:accesskey HTML5中新属性:contenteditable、contextmenu、draggable、irrelevant、ref、registrationmark、template

2017-06-01 13:56:58 1148

原创 HTML4.0和HTML5元素

4:指示在HTML4.0中是否定义了该元素 5:指示在HTML5中是否定义了该元素 标签 描述 4 5 <!

2017-06-01 12:53:15 450

原创 用Grunt实现自动化

首先要装上 Grunt 命令行以及 Grunt 本身: sudo npm install -g grunt-cli npm install –save-dev grunt Grunt 要靠插件完成任务,Grunt 插件列表(http://gruntjs.com/plugins)中列出了所有可用 插件。我们需要 Mocha、JSHint 和 LinkChecker 的插件。在写本书时,还没有

2017-05-31 14:14:03 253

MongoVUE.rar

一款功能强大将会大大的提高我们的工作效率的MongoDB客户端管理工具---MongoVUE

2018-04-04

JavaScript模式

JavaScript模式

2017-06-02

Node.js开发指南_中文正版.pdf

Node.js开发指南_中文正版

2017-06-02

空空如也

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

TA关注的人

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