What does {app, BrowserWindow} means in JavaScript (node.js)?(JavaScript (node.js) 中的 {app, BrowserWindow} 是什么意思?)
问题描述
在阅读使用 electron 制作软件的文档时,我在 index.js
文件(一般执行开始的文件)
While reading docs of making softwares with electron, I came across this type of code in the beginning of index.js
file (the file where generally execution starts)
const {app, BrowserWindow} = require('electron')
{app, BrowserWindow}
(语法,而不是关键字)的真正含义是什么?它是 JavaScript 语法,还是 node.js 的东西,还是与电子相关的东西?
What does {app, BrowserWindow}
(the syntax, not the keywords) really means? Is it a JavaScript syntax, or a node.js thing or something exclusively related to electron?
推荐答案
这种语法称为对象解构",它是最新版本的 JavaScript(JavaScript2015 aka ECMAScript 6/ES6)的一个特性 - app
和 BrowserWindow
只是您希望在应用程序的这一部分中使用的 electron
的特定部分.
This syntax is called 'object destructuring', and it is a feature of the latest version of JavaScript (JavaScript2015 aka ECMAScript 6/ES6) - app
and BrowserWindow
are just particular parts of electron
that you want to use in this portion of your application.
这是一种简化代码并轻松引用依赖项关键部分的方法.
It's a way to simplify your code and to easily reference critical parts of a dependency.
这是 https:///developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Destructuring_assignment
var o = {p: 42, q: true};
var {p, q} = o;
console.log(p); // 42
console.log(q); // true
所以在你的例子中,electron
是一个导入的模块,看起来像(同样,这里过于简单化了):
So in your case, electron
is an imported module that would look something like (again, a gross oversimplification here):
var electron = {
app: {
greet: () => {
console.log("Hello, world!")
}
},
BrowserWindow: {/* some other stuff *
本文标题为:JavaScript (node.js) 中的 {app, BrowserWindow} 是什么意思


基础教程推荐
- Bokeh Div文本对齐 2022-01-01
- Fabric JS绘制具有活动形状的多边形 2022-01-01
- 原生拖动事件后如何获取 mouseup 事件? 2022-01-01
- 检查 HTML5 拖放文件类型 2022-01-01
- 即使用户允许,Gmail 也会隐藏外部电子邮件图片 2022-01-01
- 在 contenteditable 中精确拖放 2022-01-01
- fetch 是否支持原生多文件上传? 2022-01-01
- Bootstrap 模态出现在背景下 2022-01-01
- npm start 错误与 create-react-app 2022-01-01
- 如何添加到目前为止的天数? 2022-01-01