
js
wzxBlog
这个作者很懒,什么都没留下…
展开
-
js圣杯模式
js圣杯模式 function inherit(Target, Origin) { function F(){} F.prototype = Origin.prototype; Target.prototype = new F(); Target.prototype.constructor = Target; } 下面还有另一种写法 var inherit = (...原创 2019-04-08 15:18:27 · 638 阅读 · 0 评论 -
js包装类
js数据类型: 原始值:Number、String、Boolean、undefined、null 引用值:Array、Object、function 首先原始值是没有属性和方法的,而引用值有,但是进行如下代码的时候却可以——这是因为js引擎默认地帮我们调用了包装类 让我们来看下一段代码 js内部的实现原理是怎样的呢? var a = ‘hello’;会正常执行 &nb...原创 2019-04-03 16:19:06 · 409 阅读 · 0 评论 -
js中的this指向问题
this指向 1. 函数预编译过程中this指向window 2. 全局作用域里this指向window 3. call/apply可以改变函数运行时this指向 4. 谁调用这个方法,这个方法里this指向的就是谁 看下面一个例子: var name = '我是全局的'; var a = { name: '我是a的', say: function(){ console...原创 2019-04-12 18:02:14 · 126 阅读 · 0 评论 -
js浅层克隆和深层克隆
js中的浅层克隆和深层克隆 浅层克隆:当克隆引用值时,两个对象会共用一个引用地址,造成相互的干扰,即我改,它也改。 深层克隆:克隆出来的对象和原来的对象是相互独立的,互不影响。也就是对新对象的修改都不会反映到原对象中。 首先来讲解一下深度克隆的思路: 遍历(for var prop in origin) 判断是原始值还是引用值,判断方法用typeof() 如果是引用值,则继续判断是数组还是对象,...原创 2019-04-16 10:42:31 · 345 阅读 · 0 评论 -
js数组的常用方法
js数组的常用方法(不包含ES6中新增的方法) 一、 改变原数组的方法 1. push() 后增 向数组的末尾添加新的元素,返回数组的长度 var a = [2,3,9,6,22]; var b = a.push(11); console.log(b); // 6 console.log(a); // [1,3,9,6,22,11...原创 2019-04-17 18:06:00 · 199 阅读 · 0 评论 -
Js中的原型和原型链
1. 每个构造函数在生成实例的时候,实例上都会带有一个constructor属性,该属性指向它的构造函数。 2. JavaScript规定,每个构造函数都有一个prototype属性,它指向的是原型对象,原型对象上的属性和方法都会被构造函数的实例所继承。 3. JavaScript在创建对象的时候,无论是普通对象还是函数对象,都有一个叫做__proto__的内置属性,用于指向创建它的函数对象的原型...原创 2019-07-24 08:37:53 · 216 阅读 · 0 评论 -
Dom以及事件委托和事件冒泡
当网页被加载的时候,浏览器会创建页面的文档对象模型(Document Object Model),HTML DOM模型被构造为对象的树。 1. elememt 常用的属性和方法: element.appendChild() element.hasAttribute() 如果元素拥有指定属性,则返回true element.insertBefore(newItem,exitItem) inser...原创 2019-07-27 10:50:22 · 196 阅读 · 0 评论