我在node.js atm编码。我需要创建一个动态变量并调用它。
e.g:
username = 'im_a_user';
global['ws[' + username + ']'] = ws; //(yes, i want to store the connection with ws module)
但
ws[im_a_user].send('blabla');
不起作用,节点关闭。所以我想知道global['ws[' + username + ']']
如何进行重新布局。
你知道我如何打印它 - 甚至更好,为什么im_a_user
中的ws[im_a_user].send('blabla');
没有被定义?
谢谢你的时间!
答案 0 :(得分:0)
使用括号可以访问对象属性,但必须为其指定一个有效的表达式:字符串文字或变量。看起来您正在引用未定义的变量。这就是Node扼流圈的地方。
因此,尝试使用已定义的变量
var key = 'im_a_user'
ws[key].send('blabla');
或字符串文字
ws['im_a_user'].send('blabla');