
JS封装等思想
文章平均质量分 91
AlbenXie
这个作者很懒,什么都没留下…
展开
-
[Javascript] 插件封装
JavaScript插件封装主要分成两类:* 类级别封装-相当于jQuery类的静态函数* 对象级别封装一. 类级别封装方法1.单个方法封装[html] view plain copy//封装 jQuery.alert = function(name) { alert(name转载 2017-04-17 16:45:05 · 1800 阅读 · 0 评论 -
Javascript 面向对象编程:封装
Javascript是一种基于对象(object-based)的语言,你遇到的所有东西几乎都是对象。但是,它又不是一种真正的面向对象编程(OOP)语言,因为它的语法中没有class(类)。那么,如果我们要把"属性"(property)和"方法"(method),封装成一个对象,甚至要从原型对象生成一个实例对象,我们应该怎么做呢?一、 生成对象的原始模式 假定我们把猫看成一原创 2017-06-26 11:10:03 · 577 阅读 · 0 评论 -
使用JavaScript的数组实现数据结构中的队列与堆栈
今天在项目中要使用JavaScript实现数据结构中的队列和堆栈,这里做一下总结。一、队列和堆栈的简单介绍1.1、队列的基本概念 队列:是一种支持先进先出(FIFO)的集合,即先被插入的数据,先被取出! 如下图所示: 1.2、堆栈的基本概念 堆栈:是一种支持后进先出(LIFO)的集合,即后被插入的数据,先被取出! 如下图所示原创 2017-06-26 11:07:42 · 544 阅读 · 0 评论 -
JavaScript学习总结——Javascript原型链的原理
一、JavaScript原型链 ECMAScript中描述了原型链的概念,并将原型链作为实现继承的主要方法。其基本思想是利用原型让一个引用类型继承另一个引用类型的属性和方法。在JavaScript中,用 __proto__ 属性来表示一个对象的原型链。当查找一个对象的属性时,JavaScript 会向上遍历原型链,直到找到给定名称的属性为止!比如现在有如下的代码:扩展Ob原创 2017-06-26 11:06:09 · 297 阅读 · 0 评论 -
JavaScript学习总结——Javascript非构造函数的继承
一、什么是"非构造函数"的继承? 比如,现在有一个对象,叫做"中国人"。1 var Chinese = {2 nation:'中国'3 }; 还有一个对象,叫做"医生"。1 var Doctor ={2 career:'医生'3 } 请问怎样才能让"医生"去继承"中国人",也就是说,我怎样才能生成一个"中国医生"的对象?原创 2017-06-26 11:05:08 · 484 阅读 · 0 评论 -
JavaScript学习总结——Object类详解
一、Object类介绍 Object类是所有JavaScript类的基类(父类),提供了一种创建自定义对象的简单方式,不再需要程序员定义构造函数。二、Object类主要属性 1.constructor:对象的构造函数。 2.prototype:获得类的prototype对象,static性质。三、Object类主要方法 1.hasOwnPro原创 2017-06-26 11:01:40 · 478 阅读 · 0 评论 -
JavaScript学习总结——Function类
在JavaScript中,函数其实是对象,每个函数都是Function类的实例,既然函数对象,那么就具有自己的属性和方法,因此,函数名实际上也是一个指向函数对象的指针,不会与某个函数绑定。一、函数的声明方式一:常规方式1 function sum1(num1,num2){2 return num1+num2 3 }方式二:函数表达式1原创 2017-06-26 10:59:23 · 478 阅读 · 0 评论 -
JavaScript学习总结——Javascript闭包(Closure)
闭包(closure)是Javascript语言的一个难点,也是它的特色,很多高级应用都要依靠闭包实现。很早就接触过闭包这个概念了,但是一直糊里糊涂的,没有能够弄明白JavaScript的闭包到底是什么,有什么用,今天在网上看到了一篇讲JavaScript闭包的文章(原文链接),讲得非常好,这下算是彻底明白了JavaScript的闭包到底是个神马东东以及闭包的用途了,在此写出来和大家分享一下,希望原创 2017-06-26 10:58:08 · 318 阅读 · 0 评论 -
JavaScript学习总结——JavaScript编写类的扩展方法
在JavaScript中可以使用类的prototype属性来扩展类的属性和方法,在实际开发当中,当JavaScript内置的那些类所提供的动态方法和动态属性不满足我们实际开发时,我们就可以通过"prototype"属性给自定义类添加方法和属性或者扩展原有的类中的方法和属性。一、扩展JavaScript内置类,添加动态方法语法原创 2017-06-26 10:55:41 · 1604 阅读 · 0 评论 -
JavaScript学习总结——JavaScript编写类
在工作中经常用到JavaScript,今天总结一下JavaScript编写类的几种写法以及这几种写法的优缺点,关于JavaScript编写类的方式,在网上看到很多,而且每个人的写法都不太一样,经常看到的就是以下几种方式。1、构造函数方式 用构造函数模拟"类",在其内部用this关键字指代实例对象。基本语法:function 类名(){ this.属性名原创 2017-06-26 10:54:07 · 466 阅读 · 0 评论 -
JavaScript学习总结——极简主义法编写JavaScript类
前两天在网上无意中发现了一篇使用极简主义法定义JavaScript类的文章,原文链接,这个所谓的"极简主义法"我还是第一次听说,是荷兰程序员Gabor de Mooij提出来的,这种方法不使用this和prototype,代码部署起来非常简单,这大概也是它被叫做"极简主义法"的原因。下面就介绍如何使用极简主义法完成JavaScript的封装和继承1. 封装 首先,它也是用一个对象原创 2017-06-26 10:50:07 · 640 阅读 · 0 评论 -
JavaScript学习总结——Javascript面向(基于)对象编程
一、澄清概念 1.JS中"基于对象=面向对象" 2.JS中没有类(Class),但是它取了一个新的名字叫“原型对象”,因此"类=原型对象"二、类(原型对象)和对象(实例)的区别与联系 1.类(原型对象)是抽象,是概念的,代表一类事物。 2.对象是具体的,实际的,代表一个具体的事物。 3.类(原型对象)是对象实例的模板,对象实例是类的一个个体原创 2017-06-26 11:11:03 · 463 阅读 · 0 评论 -
JavaScript学习总结——JavaScript数组
JavaScript中的Array对象就是数组,首先是一个动态数组,无需预先制定大小,而且是一个像Java中数组、ArrayList、Hashtable等的超强综合体。一、数组的声明 常规方式声明: 1、var arrName = new Array();//创建一个数组 2、var arrName = new Array([size]); //创建一原创 2017-06-26 11:12:49 · 464 阅读 · 0 评论 -
js对象
一. 普通对象与函数对象 JavaScript 中,万物皆对象!但对象也是有区别的。分为普通对象和函数对象,Object ,Function 是JS自带的函数对象。下面举例说明 function f1(){}; var f2 = function(){}; var f3 = new Function('str','console.log(str)'); var o3原创 2017-07-02 22:48:36 · 458 阅读 · 0 评论 -
将一段JS代码封装成一个方法
}).mouseout(function(){ $("#plate-3hover").removeClass("plate-3after")});$("#plate-4").mouseenter(function() { $("#plate-4hover").addClass("plate-4after")}).mouseout(function(){ $("#pl原创 2017-04-17 16:53:16 · 12094 阅读 · 0 评论 -
封装jquery插件很简单
其实,封装jquery插件很简单。先看看,封装模板是什么?看下这个light-weight模式:javascript 代码11121314151617181920212223242526272829303132333435363738394041 propertyName : "value" } //插件类转载 2017-04-17 17:06:36 · 1402 阅读 · 0 评论 -
一个小demo
一个小demo,想封装成一个可复用的类似插件,或者是推翻重写,其实就是想看看高质量代码 1 DOCTYPE html> 2 html> 3 4 head> 5 meta charset="UTF-8"> 6 title>多选框问题title> 7 head> 8 9 body> 10 11原创 2017-04-17 17:08:07 · 596 阅读 · 0 评论 -
javaScript封装的各种写法
javaScript封装的各种写法 在javascript的世界里,写法是个神奇的现象,真是百家齐开放啊!每次看到老外写的js组件,思想和写法都怪异,就没看到一个js结构基本相同的代码出来。今天,我就来谈谈js写法,我在开发过程中,也写了几种。对于性能方面,如果代码结构或逻辑写的不好,会造成计算机CPU的运算加大,运行性能降低,js的写法对性能的影响也是至关重要的转载 2017-04-17 10:36:42 · 1662 阅读 · 0 评论 -
JS类的封装及实现代码
js里能否像c#或者java里的类一样,把很多方法封装在这个类里面,然后调用这个方法的时候可以用class.Fun();这样的形式来调用。求一个最简单的完整的例子(麻雀虽小五脏俱全)。js并不是一种面向对向的语言, 没有提供对类的支持, 因此我们不能像在传统的语言里那样 用class来定义类, 但我们可以利用js的闭包封装机制来实现js类, 我们来封装一个简的Shape类.转载 2017-04-17 14:54:25 · 761 阅读 · 0 评论 -
AMD终极揭秘
目录(?)[+]究竟什么是AMD?随着web应用不断发展和对JavaScript依赖的进一步加深,出现了使用模块(Modules)来组织代码和依赖性。模块使得我们创建明确清晰的组件和接口,这些组件和接口能够很容易的加载并连接到其依赖组件。 AMD模块系统提供了使用JavaScript模块来构建Web应用的完美方式,并且这种方式具有形式简单,异步加载和广泛转载 2017-04-17 15:12:56 · 713 阅读 · 0 评论 -
封装自己的JS组件
前言:之前分享了那么多bootstrap组件的使用经验,这篇博主打算研究下JS组件的扩展和封装,我们来感受下JQuery为我们提供$.Extend的神奇,看看我们怎么自定义自己的组件,比如我们想扩展一个$("#id").MyJsControl({})做我们自己的组件,我们该如何去做呢,别急,我们慢慢来看看过程。一、扩展已经存在的组件1、需求背景很多时候,我们使用jquery.ajax的转载 2017-04-17 15:36:23 · 3119 阅读 · 0 评论 -
JS封装类或对象的最佳方案
JS封装类或对象的最佳方案 面向对象强大的优点之一是能够创建自己专用的类或者对象,封装一组属性和行为。抛开性能来说,JS要比面向对象语言如JAVA要灵活好用的多,组装数据结构很灵活方便。那么我们如何来用面向对象的思维来定义JavaScript的类或对象呢? 问题的出现如果要抽象出来一个人,那么简单的属性为:name,sex,birthday等,方法为转载 2017-04-17 15:43:20 · 4964 阅读 · 0 评论 -
我自己的Javascript 库,封装了一些常用函数 Kingwell.js
现在Javascript库海量,流行的也多,比如jQuery,YUI等,虽然功能强大,但也是不万能的,功能不可能涉及方方面面,自己写一个的JS库是对这些的补充,很多也比较实用,把应用到项目中中去也比较方面,这也是对工作的一些积累,也加深对知识的理解。2012-6-20更新,添加设置Cookie,获取Cookie,删除Cookie方法。很实用哦.......................转载 2017-04-17 15:47:41 · 1155 阅读 · 0 评论 -
JavaScript学习总结——JavaScript函数(function)
一、函数基本概念 为完成某一功能的程序指令(语句)的集合,称为函数。二、JavaScript函数的分类 1、自定义函数(我们自己编写的函数),如:function funName(){} 2、系统函数(JavaScript自带的函数),如alert函数。三、函数的调用方式 1、普通调用:functionName(实际参数...) 2原创 2017-06-26 11:17:23 · 680 阅读 · 0 评论