जावास्क्रिप्ट ऑब्जेक्ट से प्रॉपर्टी कैसे हटाएं? (delete, spread और अन्य तरीके)
सभी को नमस्ते! मैंने अभी-अभी जावास्क्रिप्ट सीखना शुरू किया है और एक समस्या का सामना करना पड़ा। मेरे पास एक ऑब्जेक्ट है जिसमें उपयोगकर्ता का डेटा है:
```javascript
const user = {
name: 'Алексей',
age: 30,
email: 'alex@example.com',
password: 'secret123',
role: 'admin'
};
```
मुझे क्लाइंट को डेटा भेजने से पहले इस ऑब्जेक्ट से `password` प्रॉपर्टी को हटाना है (ताकि पासवर्ड उजागर न हो)। मैंने `undefined` असाइन करने की कोशिश की:
```javascript
user.password = undefined;
```
लेकिन इससे प्रॉपर्टी हटती नहीं है — यह सिर्फ `undefined` हो जाती है। JSON (JSON.stringify) में सीरियलाइज़ करने पर यह गायब हो जाती है, लेकिन ऑब्जेक्ट में key बनी रहती है। और अगर मैं `for...in` के माध्यम से ऑब्जेक्ट को iterated करता हूं, तो `password` फिर भी दिखाई देता है।
मैंने `delete` ऑपरेटर के बारे में सुना है, लेकिन मुझे संदेह है क्योंकि कुछ लोग कहते हैं कि यह धीमा है और इसका उपयोग अनुशंसित नहीं है। कहीं मैंने बिना प्रॉपर्टी के नया ऑब्जेक्ट बनाने के लिए spread ऑपरेटर के साथ सिंटैक्स भी देखा। कौन सा तरीका सही है और क्यों?
कृपया बताएं।