Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/flash/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Flash a=[]或a=新数组()哪个更可取?_Flash_Actionscript 3_Performance_Optimization_Syntax - Fatal编程技术网

Flash a=[]或a=新数组()哪个更可取?

Flash a=[]或a=新数组()哪个更可取?,flash,actionscript-3,performance,optimization,syntax,Flash,Actionscript 3,Performance,Optimization,Syntax,在ActionScript3中,哪个更可取 a = [1,2,3]; 或 似乎用数据作为单个参数调用数组构造函数会比较慢,而另一种方法是某种直接内存拷贝 你知道在大多数情况下哪个更好用吗?为什么?我更喜欢方括号,因为它是一种更简洁易读的语法 后一种语法实际上会慢一些,因为您可以通过执行array=function(){…}替换默认数组构造函数--至少在大多数ECMAScript变体中是这样。因此,使用这种形式需要首先查找全局数组函数。使用数组文本(var a:Array=[])总是比使用new

在ActionScript3中,哪个更可取

a = [1,2,3];

似乎用数据作为单个参数调用数组构造函数会比较慢,而另一种方法是某种直接内存拷贝


你知道在大多数情况下哪个更好用吗?为什么?

我更喜欢方括号,因为它是一种更简洁易读的语法


后一种语法实际上会慢一些,因为您可以通过执行
array=function(){…}替换默认数组构造函数--至少在大多数ECMAScript变体中是这样。因此,使用这种形式需要首先查找全局
数组
函数。

使用数组文本(var a:Array=[])总是比使用new Array()更快,我相信这被认为是一种最佳做法。

为了避免混淆,我喜欢在几乎所有情况下使用方括号

数组构造函数有两种形式:

  • 数组(…)
  • 数组(大小:int)
第一个表单使用列出的参数作为值创建数组,第二个表单使用该数量的元素创建数组。在您想用单个int初始化数组之前,一切都很好:

  • new Array()=>[]
  • newarray(“foo”)=>
  • 新数组(“foo”、“bar”)=>
  • 新数组(42,43)=>[42,43]
  • 新数组(42)=>[未定义,…未定义x 40…,未定义]

在我停止使用数组构造函数之前,这种不一致性困扰了我好几次,除了极少数情况下我需要一个包含N个未定义元素的数组。

很有趣。就我个人而言,我觉得新数组(args)更容易阅读。我觉得它不必要地冗长和分散注意力。这也是我不喜欢基本派生语言的原因之一。
a = new Array(1,2,3);