JavaScript
jlu16
崇尚开源
展开
-
JavaScript中诡异的this—this的4种模式
在JavaScript中的this有四种模式,在这四种模式下this指向不同的目标。方法调用模式如果一个函数被设置为一个对象的属性,则称它为一个方法。当通过对象对其进行调用时,即this的方法调用模式。在方法调用模式下,函数中的this指向该函数所属的对象。var obj = { val : 1, show : function(){alert(this.val);}}obj.s原创 2017-11-21 08:47:50 · 1949 阅读 · 0 评论 -
JavaScript的事件处理程序
HTML中的事件处理程序对于支持事件的HTML标签,可以直接在标签中定义。<button onclick="alert('button')">click</button>而且如果在onclick函数中加入console.log(this),可以看出输出了整个标签本身。故在HTML事件处理程序中this指向标签本身。但是这种事件处理程序与html代码耦合紧密,而且不方便进行多个事件处理程序的操作。DO原创 2017-10-25 09:24:39 · 390 阅读 · 0 评论 -
JavaScript事件流模型
事件流捕获流捕获流最早由网景公司开发的浏览器使用,在如下结构中<div><button type='submit'></button></div>div = document.querySelector('div');div.onclick = function(event){ alert('div');};button = document.querySelector('butt原创 2017-02-14 00:54:27 · 3611 阅读 · 0 评论 -
JavaScript的几种继承模式
JavaScript中并没有传统的面向对象语言中的类的概念,但是却实现了特殊的继承机制。(阅读此文您首先需要知道原型的知识)先来说说第一种继承方式,原型链继承。一. 原型链继承所谓原型链继承,就是让父类的一个实例作为子类的原型。 即 :parentInstance = new Parent();child.prototype = parentInstance;这样,在创建子类的实例时,子类实例的原创 2017-10-02 19:47:37 · 215 阅读 · 0 评论 -
JavaScript中强大的Array类型
JavaScript中的Array类型极其强大,有(模拟的)栈/队列方法,重排序方法,操作方法,迭代方法,位置方法和归并方法。Array的一些基本问题创建数组的两种方式使用构造函数使用字面量当使用构造函数构造数组时,可传入(数组长度/数组的项)。//使用构造函数var ins1 = new Array(2);//创建一个长度为2的数组var ins2 = new Array('1',2);原创 2017-11-07 11:27:23 · 206 阅读 · 0 评论 -
JavaScript中String常用方法总结
length属性var str = "hello";alert(str.length); //5常用操作方法常用的操作方法包括concat,substr,substring,slice。这些对字符串的操作方法不会改变字符串本身,而是会返回一个子串。concat方法此方法的主要作用是进行字符串的拼接,由于使用+可以更方便的进行字符串拼接,因此这种方法的使用频率并不高。原创 2017-10-25 22:07:31 · 240 阅读 · 0 评论 -
javascript创建对象的几种常用模式
本文介绍了javascript中创建对象常用的几种模式,包括:工厂模式,构造函数模式,原型模式,组合构造函数与原型的模式,动态原型模式。一.工厂模式看如下代码:function getMySon(name,sex){ var o={}; o.name=name; o.sex=sex; o.sayName = function(){ alert(this原创 2017-09-26 22:29:10 · 244 阅读 · 0 评论 -
javscript函数的new调用与普通调用中this的差异
首先看一段代码感受一下this的作用。 place='out'; function where(){ var place='in'; alert(place); //in alert(this.place);原创 2017-09-26 22:27:04 · 495 阅读 · 0 评论 -
JavaScript—DOM 核心之Node对象
在图书馆发现了绝版的《Javascript DOM 高级程序设计》,书已经出版很长时间了,即使在技术更新换代如此之快的时代,它仍然具有较高的阅读价值。这是我大致整理的一些东西。核心Node对象1.节点名称,值和类型用nodeName取节点名称。 Element.nodeName (返回元素的名称,大写) Attr.nodeName (返回属性的名称,小写)用nodeValu原创 2017-09-07 21:46:51 · 281 阅读 · 0 评论 -
JavaScript—在嵌套的内部函数中调用外部this的方法
在javascript中经常出现函数中嵌套函数的情况。尤其是在对象函数中嵌套的函数,往往需要调用外部函数(对象函数)的this。但是如果直接在内部里调用this,得到的是当前函数(内部函数)的this。var obj = { name: 'jane', friends: ['tarzan','cheeta'], loop: function() { this.原创 2017-08-31 00:33:31 · 12670 阅读 · 0 评论