首页 > 学海无涯 > 关于类型强转换
2010六月2

关于类型强转换

 这是一个非常基础的问题. 在平时工作中就算是再小的项目里面也会涉及到类型转换. 方法大致也就是类似

  ClassName( instance );  instance as ClassName;

就类型转换而言没什么区别,在我看来也就是报错或是返回null的区别而已.

有的时候用得习惯了,动不动就会吧Int(),Object()这样的玩意拿来转. 别的还好, Array的时候请一定要注意. 这些个东西其实是全局函数,文档上写得很清楚的.

就如同事发我的代码

var a:Object;

a = [1,2];

Array(a).length;

(a as Array).length;

结果显然是输出1,2. 原因就是Array(a); 这个不是说类型转换, 是新建了一个Array. 所以

Array(a)[0].length 这个时候就是2.

各中道理文档上很详细的说. 别出现这种bug, 会让人很郁闷的.

本文地址:http://blog.riamm.com/?p=423 , 转载请保留.

本文目前尚无任何评论.

发表评论