首页 > 解决方案 > javascript中括号内的花括号是什么意思?

问题描述

我对 javascript 比较陌生,我正在学习 VueJS。当启动一个新的 vue 对象时,我意识到代码类似于:

new Vue({
    el: ‘#app’,
    data: {
        title: ‘hello World’
    }
});

我从使用 js 对象中了解到,我们可以使用花括号来启动对象,如下所示:

var car = {
   type: "Fiat", 
   model: "500", 
   color: "white"
};

而且我也知道括号用于函数,我们可以在括号内使用花括号,如下所示:

connect({ name: "testing" });

但是 vue 中的下一个符号让我感到困惑,因为我知道 vue 是一个对象而不是一个函数,所以我不知道为什么会有括号,有人可以向我澄清这部分:

new Vue({});

谢谢..任何回复表示赞赏

标签: javascriptobjectvue.js

解决方案


是的 - 与您在此处的用法相同:

connect({ name: "testing" })

new表示一个构造函数,它像函数一样被调用,所以你使用括号。并且 Vue 构造函数需要一个对象,它由花括号表示。所以这:

new Vue({})

意味着您没有向 Vue 构造函数传递任何选项。

如果您对 Vue 为什么“不是函数”感到困惑,那是因为使用new类名会构造该类的实例。如果你使用的是 ES5 风格的构造函数:

function Construction(option) {
  this.option = option;
}

然后很明显这是如何发生的。类构造函数略有不同,但它们的创建方式没有任何区别——就像函数调用一样。和任何函数一样,你可以传递一个对象。


推荐阅读