javascript设计模式之单体模式
单体是一个用来划分命名空间并将一批相关的属性和方法组织在一起的对象,如果他可以被实例化,那么他只能被实例化一次。
单体模式是javascript里面最基本但也是最有用的模式之一。
特点:
1. 可以来划分命名空间,从而清除全局变量所带来的危险。
2. 利用分支技术来来封装浏览器之间的差异。
3. 可以把代码组织的更为一体,便于阅读和维护。
单体的基本结构(正确写法):
/*Basic Singleton*/
var Singleton = {
attribute1:true,
attribute2:10,
method1:function(){},
method2:function(){}
};1划分命名空间:
1 var box = {
2 width:0,
3 height:0,
4 getArea:function(){
5 return this.width*this.height;//js中对象成的访问必须是显示的,即this是不能省略的
6 },
7 init:function(w,h){
8 // width = w;
9 // height = h;这种方式相当于定义了两个全局变量,(没加var声明的变量为全局变量)
10 // 并不是对对象width和height的赋值
11 //下面是正确的
12 this.width = w;
13 &nbs
相关文档:
经过前段时间,学习《ajax完全自学手册》后,才知道javascript原来还可以这么写。
学过java,c#,vb的都知道类的概念,而类具有继承、封装、多态等功能。而javascript它不是面向对象语言,它是解释性语言。
但我们同样可以使用javascript来实现继承、多态。
javascript实现类,有多种方法。
方法一:构造方法。
......
一,javascript的流程控制语句
if(x==null) 或 if(typeof(x) =='undefined')可以简单写if(!x)
注意:在javascript中,false,null,undefined,0,""均是false
即 var x;
此时 if(x==null)
if(typeof(x)=='undefined')均为真
二,switch语句
switch(表达式)   ......
在使用getElementById时又遇到了“document.getElementById('...')为空或不是方法”的错误,alert()了一下发现获取的值为null,于是找了半天搜索到了这个这个defer。
在javascript标签中加上 defer 等于在页面完全在入后再执行,相当于 window.onload ,但应用上比 window.onload  ......
一,javascript中的对象
。对象和对象实例
1,对象是对某一类事物的描述,是抽象上的概念,而对象实例是一类事物中的具体个例。(这里对象相当于java,c++中的类的概念)
2,能够被用来创建对象实例的函数就叫做对象的构造函数,只要定义了一个对象的构造函数就等于定义了一个对象,使用new关键字和对象的构造函数就可以 ......
confirm(string) 方法
1、有一个string类型参数,它的值就是在对话框中的文本信息。
2、boolean 类型的返回值。选择“确定”返回的就是true,选择“取消”返回false。
举例:
<script type="text/javascript">
function cfm() {
i ......