易截截图软件、单文件、免安装、纯绿色、仅160KB

JavaScript中的公有成员,私有成员和静态成员

私有成员就是在类的内部实现中可以共享的成员。但是并不对外公开,JavaScript中并没有特殊的机制来定义私有成员,但是可以用一些技巧来实现这个功能。主要是通过变量的作用域性质来实现的,在一个函数内部定义的变量称为局部变量,该变量不能被函数外的程序所访问,可以被函数内部定义的嵌套函数所访问。
在类的构造函数中可以为类添加成员,通过这种方式定义的成员,实际上共享了在构造函数内部定义的局部变量,这些变量就可以看作是类的私有成员。如:
实现私有成员
<script>
function class1(){
var pp="this is a private property";//私有属性成员pp
function pm(){//私有方法成员pm,显示pp的值
      alert(pp);
}
this.method1=function(){//在公有成员中改变私有属性的值
      pp="pp has been changed";
}
this.method2=function(){//在公有成员中调用私有方法
     pm();
}
}
var obj1 = new class1();
obj1.method1();
obj1.method2();
</script>
注意:
局部变量(私有成员)被所有在构造函数中定义的公有方法所共享,而且仅被在构造函数中定义的公有方法所共享,这意味着,在prototype中定义的类成员不能访问在构造器中定义的局部变量。
实现静态成员:
和私有成员勉强相比,静态成员就要正统的多了,静态成语就是属于一个类的成员,如:
function class1(){
}
class1.staticProperty="sample";
class1.staticMethod=function(){
         alert(class1.staticProerty);
}
class1.staticMethod();
如果要给每个函数对象都添加通用的静态方法,还可以函数对象所对应的类Function来实现:
Function.prototype.showArgsCount=function(){
            alert(this.length);
}
function class1(a){
}
class1.showArgsCount();
由此可见,通过Function的prototype原型对象,可以给任何函数都加上通用的静态成员。


相关文档:

[从jQuery看JavaScript]

jQuery片段:
/*!
* jQuery JavaScript Library v1.3.2
* http://jquery.com/
*
* Copyright (c) 2009 John Resig
* Dual licensed under the MIT and GPL licenses.
* http://docs.jquery.com/License
*
* Date: 2009-02-19 17:34:21 -0500 (Thu, 19 Feb 2009)
* Revision: 6246
*/
  查看任何源 ......

深入认识javascript中的eval函数

发现为本文起一个合适的标题还不是那么容易,呵呵,所以在此先说明下本文的两个目的:
(1)介绍javascript中的eval函数的用法
(2)如何在函数内执行全局代码
►先来说eval的用法,内容比较简单,熟悉的可以跳过。
eval函数接收一个参数s,如果s不是字符串,则直接返回s。否则执行s语句。如果s语句执行结果是一个 ......

javascript:按回车相应按钮提交事件

    在表单提交前经常遇到表单验证问题而常用的方法有以下两种:
    1、使用提交按钮提交,在form表单中的onsubmit事件进行表单验证:
        <script type="text/javascript">
        & ......

如何学好javascript 转载

 
       首先你要搞清楚一件东西,就是JAVA JAVASCRIPT除了长的象以外没有一样的地方,JAVA是依赖于JAVA虚拟机运行的一种面向对象的强类型语言,JAVASCRIPT是依赖于浏览器的一种若类型语言
javascrip和css是嵌套在asp语言中的
总之,顺序就是:
静态网页制作:html
网页三剑客 ......

JavaScript 复选框全选(二)

 
Code:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title>无标题页</title>
<mce:script language="javascript" type="te ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号