вычисление использования памяти в JavaScript - PullRequest
2 голосов
/ 19 марта 2012

Я написал программу на Javascript, которая читает числа из файла, сортирует их и затем записывает их обратно в файл. Но я не смог найти подходящий метод или инструмент, чтобы получить использование памяти программой (. что-то вроде Runtime.getRuntime (). totalMemory () - Runtime.getRuntime (). freeMemory (); в Java). Если кто-то может дать мне подсказку, я буду благодарен.

Вот код.

<html>
<script>
var oRequest;

var data=new Array();
var b= new Array();
var j
var k;
var temp;
var temp1;

if(document.all) {

oRequest = new ActiveXObject("Microsoft.XMLHTTP")
}
else {

oRequest = new XMLHttpRequest();
}


oRequest.open("GET", "file:///C:/numbers.txt", true);
oRequest.send(null);


numbers= oRequest.responseText.split("\n");
for (var i = 0;i<(numbers.length-1);i++)
{
numbers[i] = parseInt(numbers[i],10);
}

var d = new Date();
var start = d.getTime();

for(var i=0;i<numbers.length;i++)
{
for(j=0;j<(numbers.length-1);j++)
{
 if(numbers[j]>numbers[j+1])
{
 temp=numbers[j+1];
  numbers[j+1] = numbers[j];
  numbers[j] = temp;
 }
 }}

var g = new Date();
var end =g.getTime();
var diff=(end-start);


</script>
<script>
function WriteFile() 
{
var fso  = new ActiveXObject("Scripting.FileSystemObject"); 
var fh = fso.CreateTextFile("C:\\BubbleJS.txt", true); 
for(i=0;i<5000;i++)
{
fh.WriteLine(numbers[i]);
}   
fh.WriteLine("\n");
fh.WriteLine("The time required for sorting is "+diff+" Milliseconds");
fh.Close(); 
}
 </script>


<form>
<body background="Bubble.png">
 <h1>&nbsp;</h1>
 <input type="button" onClick='alert("Directing to Home Page"); window.location = "Home           Page.html"' value="Back to Home  Page">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
  <input type="button" onClick=WriteFile(); value="Begin Sorting!" 
    style="width: 174px; margin-left: 0px">&nbsp;&nbsp;

   </form>

   </html>

1 Ответ

2 голосов
/ 19 марта 2012

Языковые и основные библиотеки JavaScript не позволяют просматривать или вычислять использование памяти среды выполнения.

Ваша единственная надежда - найти библиотеку (например, плагин ActiveX и т. Д.), Которая можетэто для вас.Обратите внимание, что инструменты разработчика некоторых популярных веб-браузеров (Chrome, Firefox и, возможно, других) предоставляют графический интерфейс для профилирования памяти, поэтому, возможно, существуют программные хуки, которые вы можете найти;однако, если они существуют, они почти наверняка не будут работать кросс-браузерно.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...