से एक कुंजी हटाने का विनाशकारी तरीका हैश से एक महत्वपूर्ण मूल्य जोड़ी हटाने का कोई विनाशकारी तरीका है?हैश
उदाहरण के लिए, अगर तुमने किया था
original_hash = {:foo => :bar}
new_hash = original_hash
new_hash = new_hash.reject{|key, _| key == :foo}
या
original_hash = {:foo => :bar}
new_hash = original_hash
new_hash = new_hash.dup
new_hash.delete(:foo)
तो original_hash
अपरिवर्तित है, और new_hash
बदल गया है, लेकिन वे एक बालक वर्बोज़ कर रहे हैं। हालांकि, अगर आप किया
original_hash = {:foo => :bar}
new_hash = original_hash
new_hash.delete(:foo)
तो original_hash
बदल गया है, जो नहीं है कि मैं क्या चाहता हूँ।
क्या कोई ऐसी विधि है जो मैं चाहता हूं?
'original_hash' * *' delete_if' का उपयोग करके आपके पहले उदाहरण में बदला गया है। साथ ही, 'हटाएं' का उपयोग करके आपके दूसरे उदाहरण में 'new_hash'' 'foo'' से संबंधित मान प्राप्त करता है, यानी 'bar', हैश स्वयं ही नहीं। –
@shioyama इसके लिए धन्यवाद! > _ < –