我有这样的功能:
function dataSend(type, message) {
return {
type: message
};
};
我正在使用的是这样的:
io.sockets.emit('addToQueue', dataSend('error', 'User not found'));
但是当它到达客户端时,我得到一个类似
的对象 { type: 'User not found' }
代替
{ 'error': 'User not found' }
为什么这样做?我不知道如何解决这个问题,非常感谢。
答案 0 :(得分:3)
您无法使用类似的变量设置密钥,您需要使用括号表示法
function dataSend(type, message) {
var obj = {};
obj[type] = message;
return obj;
};
答案 1 :(得分:1)
试试这个:
function dataSend(type, message) {
var a={};
a[type]=message;
return a;
}
Javascript不需要围绕属性名称引用。
使用{type:message}
或{'type':message}
会产生相同的结果。