首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >什么时候使用Literals对象文字?

什么时候使用Literals对象文字?
EN

Stack Overflow用户
提问于 2017-02-14 13:28:47
回答 2查看 1.2K关注 0票数 5

我即将开始为一个应用程序构建一个小的javascript模块。我接触到了两种不同的代码组织方式:对象字面量和生命。我知道在IIFE中,所有的变量和函数都是私有的,除非另外公开,但是有没有其他的原因让我使用它而不是object文字呢?

为什么我要使用对象字面量:

代码语言:javascript
复制
var gojiraSays = 'Toxic Garbage Island!!!'

var app = {

  printStuff: function(){
    console.log(gojiraSays)
  }

}

...over说生活版:

代码语言:javascript
复制
var app = (function(){
  var gojiraSays = 'Toxic Garbage Island!!!'

  var yellGojira = function(){
    console.log(gojiraSays);
  }

  return{
    yellGojira: yellGojira
  }

}());

app.yellGojira();
EN

回答 2

Stack Overflow用户

发布于 2017-02-14 14:01:07

模块模式

请参阅this answer以了解使用对象文字和揭示模块模式 (RMP)的优点。

生命

请参阅this链接以获取有关使用IIFE进行项目结构化的优势的信息。

我的建议

我更喜欢使用RMP,因为它使您能够有效地分离关注点,同时还可以提高可读性。

票数 2
EN

Stack Overflow用户

发布于 2017-02-14 13:47:50

您应该学习第三种更好的组织模块的方法,那就是ES6模块,这使得所有这些都变得无关紧要。

代码语言:javascript
复制
// app.js
const gojiraSays = 'Toxic Garbage Island!!!'

export function printStuff() {
  console.log(gojiraSays)
}

// consumer.js
import {printStuff} from './app';

printStuff();

您将需要一些基础设施,例如Babel转译步骤,才能使其工作。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/42218545

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档