javascript - जावास्क्रिप्ट में const और const{} के बीच क्या अंतर है




node.js electron (2)

कोड के दो टुकड़े बराबर हैं लेकिन पहले वाला ES6 विनाशकारी असाइनमेंट का उपयोग कम करने के लिए कर रहा है।

यह कैसे काम करता है इसका एक त्वरित उदाहरण है:

const obj = {
  name: "Fred",
  age: 42,
  id: 1
}

//simple destructuring
const { name } = obj;
console.log("name", name);

//assigning multiple variables at one time
const { age, id } = obj;
console.log("age", age);
console.log("id", id);

//using different names for the properties
const { name: personName } = obj;
console.log("personName", personName);

जब मैं इलेक्ट्रॉन का अध्ययन करता हूं, तो मुझे BrowserWindow ऑब्जेक्ट प्राप्त करने के 2 तरीके मिले।

const {BrowserWindow} = require('electron')

तथा

const electron = require('electron')
const BrowserWindow = electron.BrowserWindow

जावास्क्रिप्ट में const और const {} बीच अंतर क्या है?

मैं नहीं समझ सकता कि const {} काम क्यों कर सकता है। क्या मुझे JS के बारे में कुछ भी याद है?


यह ES6 में नई सुविधाओं में से एक है। घुंघराले ब्रेस नोटेशन तथाकथित destructuring assignment का एक हिस्सा है। इसका मतलब यह है कि, अब आपको ऑब्जेक्ट को स्वयं प्राप्त नहीं करना होगा और प्रत्येक संपत्ति के लिए वैरिएबल असाइन करना होगा जिसे आप अलग-अलग लाइनों पर चाहते हैं। आप कुछ ऐसा कर सकते हैं:

const obj = {
  prop1: 1,
  prop2: 2
}

// previously you would need to do something like this:
const firstProp = obj.prop1;
const secondProp = obj.prop2;
console.log(firstProp, secondProp);
// etc.

// however now you can do this on the same line:
const {prop1, prop2} = obj;
console.log(prop1, prop2);

जैसा कि आपने अंत में देखा है कि कार्यक्षमता समान है - बस किसी वस्तु से संपत्ति प्राप्त करना।

विनाशकारी असाइनमेंट के लिए और भी बहुत कुछ है - आप MDN में संपूर्ण सिंटैक्स की जाँच कर सकते हैं: https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Operators/Destructuring_nignment








electron