JavaScript设计模式的一种有趣的封装小技巧
javascript设计模式第一张有一个有趣的实现继承的方法,当然javascript本质上是实现继承,还不是典型意义上的"is-a"的逻辑继承或者说是语义继承。基本的方法就是通过function的prototype属性。
一,很简单的方法
<script type="text/javascript">
<!--
var Anim = function(){};
Anim.prototype.start = function(){alert('start');};
Anim.prototype.stop = function(){alert('stop');};
var obj = new Anim();
obj.start();
obj.stop();
// -->
</script>
二,把prototype的整体赋值-对象字面量法
<script type="text/javascript">
<!--
var Anim = function(){};
Anim.prototype = {
start:function(){alert('start');},
stop:function(){alert('stop');}
};
var obj = new Anim();
obj.start();
obj.stop();
// -->
</script>
注意:对prototype属性整体赋值只能是用户自定义的构造函数,对javascript内置的构造函数是不能的,如Function.prototype= {};
是无效的。
三,把prototype的赋值提到Function对象的prototype来操作。
<script type="text/javascript">
<!--
//对Function构造函数的prototype增加扩张函数
Function.prototype.extend = function(method, func){
this.prototype[method] = func;
return this; //支持链式操作
};
//Anim是新的Function实例,它的[[prototype]]是指向Function.prototype,因此Anim.extend可以通过搜索原型链
//而调用Function.prototype.extend方法,该方法返回this,也就是对象Anim
var Anim = function(){};
Anim.extend('start', function(){alert('start');}).extend('stop', function(){alert('stop');});
var obj = new Anim();
obj.start();
obj.stop();
// -->
</script>
相关文档:
.XML Web services 行为使客户端脚本能够调用由 Microsoft .NET XML Web services 或其他支持简单对象访问协议 (SOAP) 的 Web 服务器公开的远程方法。
目的:提供一种简单的方法使用和利用 SOAP,而不需具有 SOAP 实现的专业知识。
步骤:
1.下载Webservice.htc,许多网上的文章介绍该文件可以在微软的网站上找到,但我按 ......
<html>
<head>
<title>测试输入字符</title>
<script language=javascript>
String.prototype.lenB =function(){
return this.replace(/[^\x00-\xff]/g,"**").length;
}
function a() ......
JavaScript键盘事件侦听
在使用JavaScript做WEB键盘事件侦听捕获时,主要采用onkeypress、onkeydown、onkeyup三个事件进行出来。该三个事件的执行顺序如下:onkeydown -> onkeypress ->onkeyup。在一般情况下,采用三种键盘事件均可对键盘输入进行有效的响应。当在实际使用中,会发现这几者有些不同的差别。
......
1.delete 运算符
对象删除一个属性,或数组中删除一个元素。将无用的内容删除以节省空间。
delete expression
example:
var person = new Object();
person.sex = "male";
alert(person.sex);
delete person.sex;
alert(person.sex);
2. ‘,' 运算符
var a = 2;
......
有些时候你精通一门语言,但是会发现你其实整天在和其它语言打交道,也许你以为这些微不足道,不至于影响你的开发进度,但恰恰是这些你不重视的东西
会浪费你很多时间,我一直以为我早在几年前就已经精通JavaScript了,直到目前,我才越来越觉得JavaScript远比我想象的复杂和强大,我
开始崇拜它,
趁着节日的空隙,把有 ......