Node.js में घुंघराले कोष्ठक (ब्रेसिज़) के लिए 'कथन' की आवश्यकता होती है


97

मैं नीचे दिए गए दो 'आवश्यकता' बयानों के बीच के अंतर को समझने की कोशिश कर रहा हूं।

विशेष रूप से, { }एस के चारों ओर लिपटे उद्देश्य क्या है ipcMain?

const electron = require('electron')

const {ipcMain} = require('electron')

वे दोनों electronमॉड्यूल की सामग्री को असाइन करते दिखाई देते हैं , लेकिन वे स्पष्ट रूप से अलग कार्य करते हैं।

क्या कोई इस पर थोड़ा प्रकाश डाल सकता है?

जवाबों:


142

दूसरा उदाहरण विनाशकारी का उपयोग करता है।

यह विशिष्ट चर (फ़ंक्शन सहित) को आवश्यक मॉड्यूल से निर्यात किया जाएगा।

उदाहरण के लिए (functions.js):

module.exports = {
   func1,
   func2
}

आपकी फ़ाइल में शामिल है:

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

अब आप उन्हें व्यक्तिगत रूप से कॉल कर सकते हैं,

func1()
func2()

विरोध के रूप में:

const Functions = require('./functions')

डॉट नोटेशन का उपयोग कर कहा जाता है:

Functions.func1()
Functions.func2()

उम्मीद है की यह मदद करेगा।

आप यहां विनाशकारी के बारे में पढ़ सकते हैं , यह ईएस 6 का एक बहुत ही उपयोगी हिस्सा है और इसका उपयोग सरणियों के साथ-साथ वस्तुओं के साथ भी किया जा सकता है।


19

के साथ const electron = require('electron'), ipcMainमॉड्यूल के रूप में उपलब्ध होगा electron.ipcMain

मॉड्यूल के साथ const {ipcMain} = require('electron')के ipcMainरूप में उपलब्ध हो जाएगा ipcMain

इस निर्माण को ऑब्जेक्ट डिस्ट्रक्टिंग कहा जाता है और पायथन निर्माण के समान ही प्राप्त करता है

from library import ...

अपने मूल रूप में यह आपको किसी वस्तु के गुणों को सीधे संदर्भित करने की अनुमति देता है:

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)

जाँच:

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

आप जावास्क्रिप्ट ऑब्जेक्ट के कई गुणों को आयात करने के लिए विनाशकारी असाइनमेंट का उपयोग कर सकते हैं, उदाहरण के लिए:

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

यदि आप ऐसी संपत्ति का उपयोग करते हैं जो अस्तित्व में नहीं है, तो यह सेट हो जाएगा undefinedऔर आपको कोई त्रुटि नहीं मिलेगी।

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

यह भी देखें: बयानों में घुंघराले कोष्ठक क्या var { … } = …करते हैं?

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.