原生js
Jasminecjc
想起来了就会十几篇原创博客的搬运,没想起来大半年不更
展开
-
面向对象的程序设计(理解对象)
ecmascript中有两种属性:数据属性和访问器属性数据属性:configurable(能否通过delete删除属性从而重新定义属性,能否修改属性的特性或者能否把属性修改为访问器属性)enumerable (能否通过for-in循环返回属性)writable (能否修改属性的值)value (包含这个属性的数据值)直接在对象上定义的属性前三个默认值都为true,value原创 2016-03-12 22:45:17 · 549 阅读 · 0 评论 -
最全的数组去重方法对比
常规方法,简洁优雅版原创 2016-07-02 18:26:24 · 684 阅读 · 0 评论 -
js深浅复制
深浅复制对比深浅复制代码实现第三方库的实现原创 2016-06-25 16:38:04 · 597 阅读 · 0 评论 -
js模版引擎介绍
js模版引擎介绍JavaScript 模板是将 HTML 结构从包含它们的内容中分离的方法。模板系统通常会引入一些新语法,但通常是非常简单的,一个要注意的有趣的点是,替换标记通常是由双花括号({ {……} })表示,这也是 Mustache 和 Handlebars 名字的来源。什么时候使用JavaScript模板?一旦我们发现自己在 JavaScript原创 2016-05-26 19:35:26 · 1758 阅读 · 0 评论 -
DOM
DOM1级主要定义的是HTML和XML文档的底层结构。DOM2和DOM3级别则在这个结构的基础上引入了更多的交互能力,也支持了更高级的XML特性。为此DOM2和DOM3级分为许多模块(模块之间具有某种关联),分别描述了DOM的某个非常具体的子集。这些模块如下:1、DOM2级核心(DOM Level 2 Core):在1级核心的基础上构建,为节点添加了更多方法和属性;2、DOM2级视图(原创 2016-02-29 14:57:51 · 577 阅读 · 0 评论 -
dom2
事件冒泡:即事件最开始由最具体的元素接受然后逐级向上传播至最不具体的那个节点(比较主要)事件捕获:不太具体的事件更早接收到事件,最具体的节点最后接收到事件html事件的缺点:html和js紧密的耦合在一起dom0级事件处理程序:document.getElementById('btn').onclick=function(){};dom2级事件处理程序 :原创 2016-02-29 14:55:32 · 436 阅读 · 0 评论 -
event事件中ie和标准dom的区别
1.事件流的区别IE采用冒泡型事件 Netscape使用捕获型事件 DOM使用先捕获后冒泡型事件示例:点击这里冒泡型事件模型: button->div->body (IE事件流)捕获型事件模型: body->div->button (Netscape事件流)DOM事件模型: body->div->button->butto原创 2016-02-29 14:54:46 · 942 阅读 · 0 评论 -
js闭包等笔记
js没有块级作用域的概念,在for和while循环里声明的对象相当于全局变量!function(){ var a,v;}();用来把函数声明变成函数表达式NAN和任何都不等,包括自身js里的对象的比较是用引用比较而不是用值比较空对象不相等js里有六大数据类型:object,number,string,boolean,n原创 2016-02-29 14:54:11 · 330 阅读 · 0 评论 -
js严格模式
严格模式是一种特殊的执行模式,修复了部分语言上的不足,提供更强的错误检查,并增强安全性1028(2).html'use strict';function func(){};1.不允许使用with2.不允许未声明的变量被赋值3.arguments变为参数的静态副本4.delete报错5.对象字面量重复属性名报错6.禁原创 2016-02-29 14:53:28 · 474 阅读 · 0 评论 -
JS原型链
'z' in obj;用in返回的是对象及原型链上的结果 在JavaScript 中,每当定义一个对象(函数)时候,对象中都会包含一些预定义的属性。其中函数对象的一个属性就是原型对象 prototype。注:普通对象没有prototype,但有__proto__属性JS在创建对象(不论是普通对象还是函数对象)的时候,都有一个叫做__proto__的内置属性原创 2016-02-29 14:52:52 · 399 阅读 · 0 评论 -
obj.style 和currentstyle 等区别
获取样式 obj.style 和currentstyle 等区别obj.style只能获得内嵌样式(inline Style)就是写在Tag里面的,他访问不到那些链接的外部css和在head中用声明的style。所以必须认识到在那些使用外部Css文件的页面中,如果用style赋值,如obj.style=“color:red”;显然效果是正确的,其中的奥秘确是只是在该对象的原创 2016-02-29 14:51:14 · 3242 阅读 · 0 评论 -
客户端检测技术
按优先级降序:能力检测怪癖检测用户代理检测能力检测:一种客户端检测形式(又称特性检测),目的不是识别特定的浏览器,而是识别浏览器的能力两个概念:1.先检测最常用的特性可以保证代码最优化2.必须测试实际要用到的特性在可能的情况下,尽量使用typeof进行能力检测用户代理检测:通过检原创 2016-03-12 22:50:54 · 518 阅读 · 0 评论 -
面向对象的程序设计(创建对象)
使用new操作符调用构造函数经历4个步骤:1.创建一个对象2.将构造函数的作用域赋给新对象(因此this就指向了这个对象)3.执行构造函数中的代码(为新对象添加属性)4.返回新对象以构造函数模式定义的构造函数是定义在global对象(在浏览器中是window对象)中的任何函数,只要通过new操作符来调用,它就可以作为构造函数,而任何函数如果不通过new操作符原创 2016-03-12 22:45:54 · 638 阅读 · 0 评论 -
Generator 函数的含义与用法
异步编程对 JavaScript 语言太重要。JavaScript 只有一根线程,如果没有异步编程,根本没法用,非卡死不可。以前,异步编程的方法,大概有下面四种。回调函数事件监听发布/订阅Promise 对象ECMAScript 6 (简称 ES6 )作为下一代 JavaScript 语言,将 JavaScript 异步编程带入了一个全新的阶转载 2016-07-04 10:49:42 · 800 阅读 · 0 评论