Ale*_*man 11 html javascript google-chrome knockout.js microsoft-edge
在Google Chrome中运行我的KnockoutJS v3.4.2(测试)应用程序时遇到问题.
我的页面的内存使用量不断增加.
测试代码是一段非常简单的代码,它每秒都会更改一个可观察数组中的项:
HTML:
<html>
<head>
<title>KnockoutJS</title>
</head>
<body>
<h1>Foreach test</h1>
<ul id="ul-numbers" data-bind="foreach: { data: listOfItems }">
<li>
<span data-bind="text: $data"></span>
</li>
</ul>
<script type="text/javascript" src="./lib/knockout.js"></script>
<script type="text/javascript" src="./index.js"></script>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
JavaScript的:
var vm = {
listOfItems: ko.observableArray()
};
window.setInterval(function updateList(){
var array = [];
for(var i = 0 ; i < 1000; i++){
var num = Math.floor( Math.random() * 500);
array.push(num);
}
vm.listOfItems(array);
}, 1000);
ko.applyBindings(vm);
Run Code Online (Sandbox Code Playgroud)
内存使用情况:
在Firefox中,内存使用率不会增加:
start:459.6 MB ---> After + - 1小时:279.4 MB
在chrome中,内存使用量不断增加(单个选项卡的内存):
start:52.912 MB ---> After + - 1小时:566.120 MB
我在这段代码中做错了吗?或者这是Google Chrome或KnockoutJS中的错误?
显然这是一个浏览器问题。
当我现在运行我的测试项目时,内存不会增加。
测试项目可以在这里找到:https://github.com/knockout/knockout/issues/2223
在 Google Chrome 版本“58.0.3029.110”中已解决。
| 归档时间: |
|
| 查看次数: |
625 次 |
| 最近记录: |