javascript 重复执行函数,内存溢出
function getDeviceCatalogo() {
var json = {"苏州":{"用户1":{"device_ID":["101","102"],"name":["设备1","设备2"],"state":["正常","离线"]},"用户2":{"device_ID":["104","105","106","107"],"name":["设备1","设备2","设备3","设备4"],"state":["离线","正常","故障","离线"]}},"无锡":{"用户3":{"device_ID":["201","202","203"],"name":["设备1","设备2","设备3"],"state":["故障","正常","故障"]},"用户4":{"device_ID":["204","205","206","207"],"name":["设备1","设备2","设备3","设备4"],"state":["正常","故障","故障","正常"]}}};
var device_catalog_html = '';
for (var prop1 in json) {
device_catalog_html += '<div class="list"><div><i class="fa fa-angle-down fa-fw fa-lg"></i>' + prop1 + '</div>';
for (var prop2 in json[prop1]) {
device_catalog_html += '<div class="list1"><div><i class="fa fa-angle-down fa-fw fa-lg"></i>' + prop2 + '</div><div class="device_list">';
for (var i in json[prop1][prop2].name) {
var class_name, prepend_i;
switch (json[prop1][prop2].state[i]) {
case '正常':
class_name = 'normal';
prepend_i = '<i class="fa fa-fw fa-modx fa-spin"></i>';
break;
case '故障':
class_name = 'wrong';
prepend_i = '<i class="fa fa-fw fa-scale fa-flash"></i>';
break;
case '离线':
class_name = 'off';
prepend_i = '<i class="fa fa-fw fa-power-off"></i>';
break;
}
device_catalog_html += '<div device_ID="' + json[prop1][prop2].device_ID[i] + '"device_name="' + json[prop1][prop2].name[i] + '" state="' + json[prop1][prop2].state[i] + '" class="' + class_name + '">' + prepend_i + json[prop1][prop2].name[i] + '</div>';
}
device_catalog_html += '</div></div>'
}
device_catalog_html += '</div>';
}
for (var i = 0; i < $('#device>.body>.device_catalog').children().length; i++) {
var target = $('#device>.body>.device_catalog').get(0);
var e = target.childNodes[i];
delete target.removeChild(e);
e = null;
delete e;
}
$('#device>.body>.device_catalog').html(device_catalog_html);
}
setInterval(getDeviceCatalogo, 2000);
以上的代码在浏览器执行的时候,会让内存不断增长,最终会吃光内存,请老司机帮忙看一下,哪个地方的问题。。。
...全文
相关推荐
javascript递归函数定义和用法示例分析
主要介绍了javascript递归函数定义和用法示例分析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
js代码-函数编程-惰性函数
js代码-函数编程-惰性函数
javascript延时重复执行函数 lLoopRun.js
javascript延时重复执行函数 lLoopRun.js
延时重复执行函数 lLoopRun.js
公司的一个项目中,有许多地方需要延时执行一些可重复性的函数(动作),就写了下面这段函数。 呵呵,不知道取什么意思更为确切些,就定为了:LoopRun,意为“重复执行” function lLoopRun(sFuncLoop,sFuncEnd,nDelay) { var vintervalId = null; var runString = sFuncLoop; var stopString = sFuncEnd; var delayTime = nDelay; //var nCount = 0; this._doLoop = function (){ i
js 每隔两秒执行一个函数 javascript
每隔两秒执行一个函数 使用jascript写


