termina regulares regular parentesis para palabra nombres expresiones expresion exacta especiales corchetes con caracteres javascript node.js ecmascript-6 destructuring

javascript - regulares - regex diagonal



Las llaves(llaves) en el nodo requieren declaraciĆ³n (2)

Con const electron = require(''electron'') el módulo ipcMain estará disponible como electron.ipcMain

Con const {ipcMain} = require(''electron'') el módulo ipcMain estará disponible como ipcMain

Esta construcción se llama desestructuración de objetos y logra lo mismo que la construcción de Python

from library import ...

En su forma básica, le permite referirse a las propiedades de un objeto directamente

var o = {prop1: ''1'', prop2: 2} var {prop1, prop2} = o console.log(prop1) // ''1'' (same as o.prop1) console.log(prop2) // 2 (same as o.prop2)

Cheque:

const {ipcMain} = require(''electron'') const myElectron = require(''electron'') const myipcMain = myElectron.ipcMain console.log(myipcMain===ipcMain) // true

Puede usar la asignación de desestructuración para importar varias propiedades de un objeto Javascript, por ejemplo:

const { app, BrowserWindow, ipcMain } = require(''electron'')

Si usa una propiedad que no existe, se establecerá como undefined y no obtendrá un error.

const {app, BrowserWindow, ipcMain, doesntExist} = require(''electron'') console.log(doesntExist) // undefined

Ver también: ¿Qué hacen las llaves en las declaraciones var { … } = … ?

Estoy tratando de entender la diferencia entre las dos declaraciones requeridas a continuación.

Específicamente, ¿cuál es el propósito de los { } s envueltos alrededor de ipcMain ?

const electron = require(''electron'') const {ipcMain} = require(''electron'')

Ambos parecen asignar los contenidos del módulo de electrones, pero obviamente funcionan de manera diferente.

¿Alguien puede arrojar algo de luz?


El segundo ejemplo utiliza la desestructuración.

Esto llamará a la variable específica (incluidas las funciones) que se exportan desde el módulo requerido.

Por ejemplo (functions.js):

module.exports = { func1, func2 }

está incluido en su archivo:

const { func1, func2 } = require(''./functions'')

Ahora puedes llamarlos individualmente,

func1() func2()

Opuesto a:

const Functions = require(''./functions'')

se llaman usando notación de puntos:

Functions.func1() Functions.func2()

Espero que esto ayude.

Puede leer sobre la desestructuración here , es una parte muy útil de ES6 y se puede usar con matrices y objetos.