WEB开发网
开发学院网页设计JavaScript JavaScript面向对象的支持(上) 阅读

JavaScript面向对象的支持(上)

 2010-09-14 13:37:41 来源:WEB开发网   
核心提示: link() : 把一个有HREF属性的超链接标签<A>放在String对象中的文本两端,big(): 把一对<big>标签放在String对象中的文本两端,JavaScript面向对象的支持(上)(4),以下方法与此类同:anchor()blink()bold()

link() : 把一个有HREF属性的超链接标签<A>放在String对象中的文本两端。

big() : 把一对<big>标签放在String对象中的文本两端。

以下方法与此类同:

anchor()

blink()

bold()

fixed()

fontcolor()

fontsize()

italics()

small()

strike()

sub()

sup()除此之外,string的主要复杂性来自于在JavaScript中无所不在的toString()方法。这也是JavaScript为浏览器环境而提供的一个很重要的方法。例如我们声明一个对象,但是要用document.writeln()来输出它,在IE中会显示什么呢?下例说明这个问题:

// toString()的应用
  //---------------------------------------------------------
  var

s = new Object();s.v1 = 'hi,';
s.v2 = 'test!';
document.writeln(s);
document.writeln(s.toString());
s.toString = function() {
 return s.v1 + s.v2;
}
document.writeln(s);

在这个例子中,我们看到,当一个对象没有重新声明(覆盖)自己toString()方法的时候,那么它作为字符串型态使用时(例如被writeln),就会调用Java Script环境缺省的toString()。反过来,你也可以重新定义JavaScript理解这个对象的方法。很多JavaScript框架,在实现“模板”机制的时候,就利用了这个特性。例如

他们用这样定义一个FontElement对象:

// 利用toString()实现模板机制的简单原理
  //---------------------------------------------------------
  function FontElement(innerHTML) {
  this.face = '宋体';
 this.color = 'red';
 // more...
 var ctx = innerHTML;
 this.toString = function() {
  return '<Font FACE="' + this.face + '" COLOR="' + this.color + '">'
   + ctx
   + '</FONT>';
 }
}
var obj = new FontElement('这是一个测试。');

上一页  1 2 3 4 5 6 7 8 9  下一页

Tags:JavaScript 面向 对象

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接