填充 JavaScript 数组的更好方法
Better way of filling javascript array
我正在尝试找到一种更好的方法来使用 JavaScript 填充数组。
目前,我有一个看起来像这样的函数来生成固定大小的示例数据数组。 我需要样本数据不相同(非同质(,最好是伪随机的。
function () {
var arraySize = (1024 * 10) / 4; // Get size for 10k buffer
var testdata = new Uint32Array(arraySize);
for (var i = 0; i < arraySize; i++) {
testdata[i] = Math.random() * 0xFFFFFFFF;
};
//...
};
它有效,但我怀疑它对 JavaScript 来说不是很惯用。
我更广泛的担忧是,对于我正在运行的测试,我将需要更大(越来越大!(的数组,所以我担心系统对于一个临时对象来说饱和。
有没有更有效/惯用的方法来填充数组?
你的方法很好,很容易理解。
也许 EcmaScript 6 附带了更惯用的,或者至少是简洁的方法:
-
TypedArray.from
:Uint32Array.from( {length: 1024 * 10 / 4 /* 10k buffer */}, function() { return Math.random() * 0xFFFFFFFF; }) // Alternatively, with an arrow function as a one-liner: Uint32Array.from( {length: 2560 }, () => Math.random() * 0xFFFFFFFF );
-
立即调用的生成器表达式 (IIGE(,用于按需创建迭代器:
new Uint32Array(function*() { var arraySize = (1024 * 10) / 4; // Get size for 10k buffer for (var i=0; i<arraySize; i++) yield Math.random() * 0xFFFFFFFF; }());
相关文章:
- 在JavaScript中拆分日期字符串的更好方法是什么
- 设置嵌套对象属性的更好方法
- 用Javascript重新格式化复杂文本日期字符串的更好方法
- 什么'这是从第三个函数上的async 1st函数获得结果的更好方法
- 将数组从javascript格式化为php的更好方法,反之亦然
- jquery:将动画绑定到滚动条位置的更好方法
- 使用较少代码隐藏和显示选择菜单内容的更好方法是什么?javascript
- 编写if-else语句的更好方法
- 传递promise回调方法的更好方法
- 在Knockoutjs中设置计算对象的observableArray的更好方法
- 从网页获取数据的更好方法,而不是使用DOM和HTML元素
- Backbone js代码气味-嵌入子视图的更好方法
- 从数组中删除项的更好方法
- 对多维数组进行分组的更好方法
- 在node.js和express中基于路径运行不同数据库查询的更好方法
- 动态更改测试中代码覆盖率的require语句的更好方法
- 设计具有数据持久性的web应用程序的更好方法
- 选择表行的更好方法
- 在nodejs服务器上提供文件的更好方法,而不是if/else
- Javascript;Ajax——填充对象的更好方法