如何在Web工作线程中使用javascript变量
How to use javascript variable in Web worker thread
我需要在Web worker线程中更新我的javascript数组。我无法在Web worker线程中访问我的javascript数组。
我的代码是:self.onmessage = function(event) {
var array = new Uint8Array(event.data);
var sum = 0;
var temparray = new Array();
for(var list = 0; list < array.length; list++ ){
var temp = myMethod(array[list]); //some operation
availableArray.push(temp);
}
self.postMessage("success");
}
我得到这个错误:availableArrayis未定义availableArray.push(临时);
你定义了2个变量是数组(或类似数组的对象):var array = new Uint8Array
和var temparray = new Array
,但然后在循环中你使用一个变量,没有在任何地方声明availableArray
,我怀疑你想改变该变量为temparray
。
错误消息非常有意义:availableArray
在任何地方都没有定义。您使用它作为一个数组,并在其上调用push
方法。然而,在默认情况下,只要你使用一个没有声明过的变量,JS就会为你创建一个新变量。当然,未初始化变量的默认值是undefined
。undefined
没有push
方法,因此出现错误。
然而,只是一个小小的评论,虽然:在JS new Array
实际上是不鼓励的。最好使用数组文字表示法:
var temparray = [];
更短和更安全
相关文章:
- 将函数的上下文应用于javascript变量
- 如何通过ajax刷新JSF填充的javascript变量
- Javascript变量赋值|
- 限制javascript变量的最小/最大整数
- 来自文本输入null的html javascript变量
- 访问jsrender模板中的全局javascript变量并更新它
- 从数据库中获取数据并插入JavaScript变量
- 如何将javascript变量传递到Meteor Spacebars模板中
- 将JavaScript变量保存到Rails模型
- 在if语句下的html中使用javascript变量
- Javascript变量分配-按类别
- 操作javascript变量[HTML]以只显示文本
- 无法比较javascript变量
- 如何将smarty变量与javascript变量进行比较
- 如何使用PHP将javascript变量添加到mysql数据库中
- Javascript 变量使用 jquery 查找变量
- 重新加载页面时Javascript变量发生变化
- 在asp classic中使用javascript变量
- 全局Javascript变量变为null
- 如何向服务器端提交javascript变量