Javascript构造函数,公有,私有特权和静态成员
//构造函数
function myClass(message)
{
//公有属性
this.myMessage = message;
//私有属性
var _separator = ' -';
var _myOwner = this;
//私有方法
function showMessage()
{
alert(_myOwner.myMessage);
}
//特权方法(也是公有方法)
this.appendToMessage = function(appendMessage)
{
this.myMessage += _separator + appendMessage;
showMessage();
}
}
//公有方法
myClass.prototype.clearMessage = function()
{
this.myMessage = '';
}
myClass.prototype = {
clearMessage:function(){
this.myMessage = '';
}
}
//静态属性
myClass.myName = 'SOBusiness';
//静态方法
myClass.alertName = function()
{
alert(this.name);
}
注:其中公有方法声明的部分采用的两种方式,在实际应用中一般采取一种方式就可以了,如果两种方式都要采用的话,应注意顺序,防止前面写的方法被清空或覆盖。
相关文档:
The ExternalInterface API
之前我们使用flash调用javascript函数,一般使用这样的方法:
代码:
getURL(“javascript:alert(‘hello zhang-chao.com’);”); //注意字符串 双引号 里面加单引号
但是使用这种方法从flash调用javascript函数仍存在许多困难 ......
提起面向对象我们就能想到类,对象,封装,继承,多态。在《javaScript高级程序设计》(人民邮电出版社,曹力、张欣译。英文名字是:Professional JavaScript for Web Developers)这本书中描述的还算比较详细。我们看看JavaScript中定义类的各种方法。
1.工厂方式
javaScri ......
if(true)
{
var color="blue";
//在java,php,c#等语言中是有块作用域的,变量color在外面是不可以访问的,但是在javascript在括号外是可以访问的
}
alert(color);//"blue"
for(var i=0;i<10;i++)
{
alert(i);
}
alert(i);//“10”外部可以访问 ......
stringObj 必选项。要执行该替换的 String 对象或文字。该对象不会被 replace 方法修改。
rgExp 必选项。描述要查找的内容的一个正则表达式对象。
replaceText 必选项。是一个String 对象或文字,对于stringObj 中每个匹配 rgExp 中的位置都用该对象所包含的文字加以替换。
下面的示例演示了 replace 方法 ......