in this test (not significant)
as3 (900 ms) :
var nowTs:Number = getTimer();
var array:Vector.<int> = new Vector.<int>();
var i:int;
var j:int;
var count:int = 20000;
for( i = 0 ; i < count; i++ )
{
for( j = 0 ; j < count; j++ )
{
if( i < 300 && j == 10 ) array.push( j );
}
}
var nowTs2:Number = getTimer();
var resultMessage:String = ( nowTs2 - nowTs ).toString();
txtResult.text = resultMessage;
JS Chrome (1 300 ms) :
var nowTs = Date.now();
var array = [];
var i;
var j;
var unitCount = 20000;
for( i = 0 ; i < unitCount; i++ )
{
for( j = 0 ; j < unitCount; j++ )
{
if( i < 300 && j == 10 ) array.push( j );
}
}
console.log(Date.now()-nowTs);
C++ (700ms)
#include <iostream>
#include <vector>
#include <chrono>
uint64_t timeSinceEpochMillisec() {
using namespace std::chrono;
return duration_cast<milliseconds>(system_clock::now().time_since_epoch()).count();
}
int main()
{
uint64_t nowTs = timeSinceEpochMillisec();
int count = 20000;
std::vector<int> array;
int i;
int j;
for (i = 0; i < count; i++)
{
for (j = 0; j < count; j++)
{
if (i < 300 && j == 10) array.push_back(j);
}
}
uint64_t nowTs2 = timeSinceEpochMillisec();
std::cout << nowTs2 - nowTs;
}