अशक्त पर्ल में

कुछ प्रोग्रामिंग भाषाओं में वहाँ है एक विशेष मूल्य null. उदाहरण के लिए, जावास्क्रिप्ट में, आप असाइन कर सकते हैं nullचर:

var a = null;

यह भी null है एक संभावित मूल्यों में JSON:

{
  "a": null
}

और अशक्त है एक मूल्य के डेटाबेस में:

mysql> select null;
+------+
| NULL |
+------+
| NULL |
+------+
1 row in set (0.00 sec)

अशक्त साधनों के अभाव के मूल्य.

में पर्ल प्रोग्रामिंग भाषा है, वहाँ कोई मूल्य नहीं बुलाया null. आप कोड लिख सकते हैं की कोशिश कर रहा करने के लिए एक मूल्य प्रदान nullचर:

▶ Run
#!/usr/bin/perl

use strict;
use warnings;

my $a = null;

लेकिन इस कोड चल रहा होगा कोई त्रुटि उत्पन्न:

Bareword "null" not allowed while "strict subs" in use at script.pl line 6.
Execution of script.pl aborted due to compilation errors.

प्रोग्रामिंग भाषा में पर्ल का उपयोग करता है एक विशेष मूल्य undef का मतलब है जो वहाँ है कोई मूल्य नहीं है । यह है के रूप में एक ही null, लेकिन केवल एक अलग नाम के साथ.

वहाँ के बीच एक अंतर के रूप में काम कर जावास्क्रिप्ट और पर्ल. जावास्क्रिप्ट में, आप को परिभाषित करता है चर लेकिन नहीं असाइन करने के लिए यह एक मूल्य, अपने मूल्य होगा undefined. और फिर यह पहले से ही संभव है करने के लिए असाइन null. पर्ल काम आसान है. पर्ल में वहाँ कोई नहीं कर रहे हैं विभिन्न मूल्यों undefined और null, पर्ल में वहाँ केवल एक विशेष मूल्य undef.

null में JSON और पर्ल

जब वेग अनुक्रम एनीमेशन पर्ल डेटा संरचनाओं के लिए JSON मूल्यों undef के लिए परिवर्तित किया जाएगा null मूल्यों में JSON. यहाँ है एक उदाहरण कोड:

▶ Run
#!/usr/bin/perl

use strict;
use warnings;
use JSON::PP;

my $data = {
    a => undef,
};

print encode_json($data);

इस कोड को प्रदर्शित करेगा {"a":null}.

इसके विपरीत, यदि आप विस्तार JSON में एक पर्ल संरचना, मूल्यों null के द्वारा प्रतिस्थापित किया जाएगा undef:

▶ Run
#!/usr/bin/perl

use strict;
use warnings;
use JSON::PP;
use Data::Dumper;

print Dumper decode_json('{"a":null}');

कार्यक्रम प्रदर्शित करेगा:

$VAR1 = {
          'a' => undef
        };

संबंधित विषयों

अन्य लेख