Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/35.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 什么是;变量:function(){}";方法_Javascript_Node.js - Fatal编程技术网

Javascript 什么是;变量:function(){}";方法

Javascript 什么是;变量:function(){}";方法,javascript,node.js,Javascript,Node.js,在Node.JS示例代码中,我发现了如下代码块 var messageReceivedCallBack = { onMessageReceived: function (message) { console.log('Message received ' + message); } }; 这个代码是什么意思?具体来说,我无法理解带有冒号(“:”)的部分。这是一个对象文字。这不是变量,而是属性名: var foo = { a: 1, b: 2 };

在Node.JS示例代码中,我发现了如下代码块

var messageReceivedCallBack = {
    onMessageReceived: function (message) {
        console.log('Message received ' + message);
    }
};

这个代码是什么意思?具体来说,我无法理解带有冒号(“:”)的部分。

这是一个对象文字。这不是变量,而是属性名:

var foo = {
   a: 1,
   b: 2
};
同:

var foo = {};
foo.a = 1;
foo.b = 2;
var foo = {};
foo.a = function () {};
同样地:

var foo = {
    a: function () {}
};
同:

var foo = {};
foo.a = 1;
foo.b = 2;
var foo = {};
foo.a = function () {};
因此:

var messageReceivedCallBack = {
    onMessageReceived: function (message) {
        console.log('Message received ' + message);
    }
};
就是这么做的:

var messageReceivedCallBack = {};

messageReceivedCallBack.onMessageReceived = function (message) {
    console.log('Message received ' + message);
};

这是一个对象文字。这不是变量,而是属性名:

var foo = {
   a: 1,
   b: 2
};
同:

var foo = {};
foo.a = 1;
foo.b = 2;
var foo = {};
foo.a = function () {};
同样地:

var foo = {
    a: function () {}
};
同:

var foo = {};
foo.a = 1;
foo.b = 2;
var foo = {};
foo.a = function () {};
因此:

var messageReceivedCallBack = {
    onMessageReceived: function (message) {
        console.log('Message received ' + message);
    }
};
就是这么做的:

var messageReceivedCallBack = {};

messageReceivedCallBack.onMessageReceived = function (message) {
    console.log('Message received ' + message);
};

在javascript中,提供了更多创建对象/类的方法

  • 构造基于函数的类
    (函数ObjConstructor(){this.name=“abc”;})
  • 对象文本(
    var myObj={“key”:“value”}
    (值可以是函数或数字、字符串……)
  • 这里的是键值对的分离。
    如果查看JSON,您会很容易理解。

    在javascript中,有更多创建对象/类的方法

  • 构造基于函数的类
    (函数ObjConstructor(){this.name=“abc”;})
  • 对象文本(
    var myObj={“key”:“value”}
    (值可以是函数或数字、字符串……)
  • 这里的是键值对的分离。
    如果查看JSON,您会很容易理解。

    也许您可以阅读:

    也许您可以阅读:

    在javascript对象中,属性名和值由
    分隔。messageReceivedCallBack对象中的“onMessageReceived”是一个方法/函数名nsole.log('收到的消息:,消息);取而代之。这使得它在拥有任何类型的对象时都能工作。+可以很好地处理字符串和int。在javascript对象中,属性名称和值由
    分隔。messageReceivedCallBack对象中的“onMessageReceived”是一个方法/函数名。总之,作为建议,请使用
    console.log(“收到的消息:
    ,消息);相反。这使它在拥有任何类型的对象时都能工作。+可以很好地处理字符串和int。如果您使用我的代码而不是示例,这将非常有用。使用这些示例需要更多的时间来理解。选择的示例尽可能少,以使核心概念更容易“看到”尽可能。我将添加您的代码作为另一个示例,但我认为这不会像最简单的示例那样容易理解。好吧,现在对我来说很容易。@LasithaYapa记住,堆栈溢出不仅适用于您,也适用于其他人。
    foo
    样式的示例对于所有其他人来说都更容易翻译o他们自己的具体情况,做出这样的回答(尽管你可能更难理解)对许多其他人来说更容易理解。如果您使用我的代码而不是示例,这将非常有帮助。使用这些示例理解需要更多的时间。选择的示例尽可能少,以使核心概念更容易“看到”尽可能。我将添加您的代码作为另一个示例,但我认为这不会像最简单的示例那样容易理解。好吧,现在对我来说很容易。@LasithaYapa记住,堆栈溢出不仅适用于您,也适用于其他人。
    foo
    样式的示例对于所有其他人来说都更容易翻译o他们自己的具体情况,使这个答案(虽然对你来说可能稍难理解)对许多其他人来说更容易理解。