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

JavaScript面向对象的支持(下)

 2010-09-14 13:37:33 来源:WEB开发网   
核心提示:八、JavaScript面向对象的支持4. 实例和实例引用在.NET Framework对CTS(Common Type System)约定“一切都是对象”,并分为“值类型”和“引用类型”两种,JavaScript面向对象的支持(下),其中&ldq

八、JavaScript面向对象的支持

4. 实例和实例引用

在.NET Framework对CTS(Common Type System)约定“一切都是对象”,并分为“值类型”和“引用类型”两种。其中“值类型”的对象在转换成“引用类型”数据的过程中,需要进行一个“装箱”和“拆箱”的过程。在JavaScript也有同样的问题。我们看到的typeof关键字,返回以下六种数据类型:

"number"、"string"、"boolean"、"object"、"function" 和 "undefined"。我们也发现JavaScript的对象系统中,有String、Number、Function、Boolean这四种对象构造器。那么,我们的问题是:如果有一个数字A,typeof(A)的结果,到底会是'number'呢,还是一个构造器指向function Number()的对象呢?

// 关于JavaScript的类型的测试代码

  function getTypeInfo(V) {
  return (typeof V == 'object' ? 'Object, construct by '+V.constructor
   : 'Value, type of '+typeof V);
  }var A1 = 100;
var A2 = new Number(100);
document.writeln('A1 is ', getTypeInfo(A1), '<BR>');
document.writeln('A2 is ', getTypeInfo(A2), '<BR>');
document.writeln([A1.constructor === A2.constructor, A2.constructor === Number]);

测试代码的执行结果如下:

A1 is Value, type of number
A2 is Object, construct by function Number() { [native code] }
true,true

1 2 3 4 5 6  下一页

Tags:JavaScript 面向 对象

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