JSON.parse()

JSON کا عام استعمال ویب سروری سے اعداد و شمار منتقلی کیلئے ہوتا ہے.

ویب سروری سے اعداد و شمار حاصل کرتے وقت، اعداد و شمار ہمیشہ سٹرنگ ہوتے ہیں.

ذریعہ JSON.parse() اعداد و شمار کو پارسی کریں، جو جاوا اسکریپت کا آئیٹم بن جائیں گے.

مثال – JSON کا پارسی کرنا

آپ کو تصور کریں کہ ہم ویب سروری سے اس ٹیکسٹ کو حاصل کریں:

'{ "name":"Bill Gates", "age":62, "city":"Seattle"}'

آپ کو جاوا اسکریپت کی فونکشن استعمال کریں، JSON.parse() ٹیکسٹ کو جاوا اسکریپت کا آئیٹم بنائیں:

var obj = JSON.parse('{ "name":"Bill Gates", "age":62, "city":"Seattle"}');

یقین رکھئے کہ اس ٹیکسٹ کو JSON فارمٹ میں لکھا ہوا ہو، نہ تو اس میں فوجی غلطی آئیگی.

آپ کی پینج پر جاوا اسکریپت کا آئیٹم استعمال کریں:

ਉਦਾਹਰਣ

<p id="demo"></p> 
<script>
 document.getElementById("demo").innerHTML = obj.name + ", " + obj.age; 
</script>

ਆਪਣੇ ਹੀ ਪ੍ਰਯੋਗ ਕਰੋ

سروری سے آئی جاوا اسکریپت کا JSON

آپ نے آجاکس کی مدد سے سروری سے JSON کی درخواست دی سکتی ہیں.

جب تک سروری کا جواب JSON فارمٹ میں لکھا ہوا ہو، آپ اس کو جاوا اسکریپت کا آئیٹم بناسکتے ہیں.

ਉਦਾਹਰਣ

آپ کو سروری سے اعداد و شمار حاصل کرنے کیلئے XMLHttpRequest استعمال کریں:

var xmlhttp = new XMLHttpRequest();
xmlhttp.onreadystatechange = function()  {
    if (this.readyState == 4 && this.status == 200) {
        myObj = JSON.parse(this.responseText);
        document.getElementById("demo").innerHTML = myObj.name;
    }
};
xmlhttp.open("GET", "json_demo.txt", true);
xmlhttp.send();

ਆਪਣੇ ਹੀ ਪ੍ਰਯੋਗ ਕਰੋ

json_demo.txt کو دیکھئے،

جس کا نا نام JSON کا سارا ہے،

جب آپ نے اک سارا سے بنا جاوا اسکریپت کا JSON استعمال کرتے ہیں، JSON.parse() بعد، اس طریقے سے جاوا اسکریپت کا اک سارا واپس آئیگا، نہ کہ جاوا اسکریپت کا اک آئیٹم.

ਉਦਾਹਰਣ

JSON جوائز سروری سے واپس آیا اک سارا ہے:

var xmlhttp = new XMLHttpRequest();
xmlhttp.onreadystatechange = function()  {
    if (this.readyState == 4 && this.status == 200) {
        myArr =  JSON.parse(this.responseText);
        document.getElementById("demo").innerHTML  = myArr[0];
    }
};
xmlhttp.open("GET", "json_demo_array.txt", true);
xmlhttp.send();

ਆਪਣੇ ਹੀ ਪ੍ਰਯੋਗ ਕਰੋ

json_demo_array.txt ਨੂੰ ਦੇਖੋ

ਅਪਰਾਧੀ

ਮਿਤੀ ਨੂੰ ਪਾਰਸਿੰਗ ਕਰੋ

JSON ਵਿੱਚ ਮਿਤੀ ਵਿੱਚ ਬਦਲਿਆ ਹੋਇਆ ਨਹੀਂ ਹੁੰਦਾ。

ਜੇਕਰ ਤੁਹਾਨੂੰ ਮਿਤੀ ਸ਼ਾਮਲ ਕਰਨਾ ਹੋਵੇ, ਤਾਂ ਇਸ ਨੂੰ ਸਟਰਿੰਗ ਵਿੱਚ ਲਿਖੋ。

ਬਾਅਦ ਵਿੱਚ ਤੁਸੀਂ ਇਸ ਨੂੰ ਮਿਤੀ ਵਿੱਚ ਬਦਲ ਸਕਦੇ ਹੋ:

ਉਦਾਹਰਣ

ਸਟਰਿੰਗ ਨੂੰ ਮਿਤੀ ਵਿੱਚ ਬਦਲੋ:

var text =  '{ "name":"Bill Gates", "birth":"1955-10-28", "city":"Seattle"}';
var obj = JSON.parse(text);
obj.birth = new Date(obj.birth);
document.getElementById("demo").innerHTML = obj.name + ", " + obj.birth;

ਆਪਣੇ ਹੀ ਪ੍ਰਯੋਗ ਕਰੋ

ਜਾਂ ਤੁਸੀਂ ਇਸ ਦੀ ਵਰਤੋਂ ਕਰ ਸਕਦੇ ਹੋ JSON.parse() ਫੰਕਸ਼ਨ ਦਾ ਦੂਜਾ ਪੈਰਾਮੀਟਰ, ਜਿਸ ਨੂੰ reviver

ਇਹ reviver ਪੈਰਾਮੀਟਰ ਫੰਕਸ਼ਨ ਹੈ, ਜੋ ਕਿ ਵਾਪਸੀ ਵੈਲਿਊ ਪਹਿਲਾਂ ਹਰੇਕ ਪ੍ਰਤੀਯੋਗੀ ਦੀ ਚੇਕ ਕਰਦਾ ਹੈ。

ਉਦਾਹਰਣ

ਸਟਰਿੰਗ ਨੂੰ ਮਿਤੀ ਵਿੱਚ ਬਦਲੋ, reviver ਫੰਕਸ਼ਨ ਦੀ ਵਰਤੋਂ ਕਰੋ:

var text =  '{ "name":"Bill Gates", "birth":"1955-10-28", "city":"Seattle"}';
var obj = JSON.parse(text, function (key, value) {
    if  (key == "birth") {
        return new Date(value);
    } else {
         return value;
   }});
document.getElementById("demo").innerHTML = obj.name + ", " + obj.birth;

ਆਪਣੇ ਹੀ ਪ੍ਰਯੋਗ ਕਰੋ

ਫੰਕਸ਼ਨ ਨੂੰ ਪਾਰਸਿੰਗ ਕਰੋ

JSON ਵਿੱਚ ਫੰਕਸ਼ਨ ਨਹੀਂ ਹੁੰਦੇ。

ਜੇਕਰ ਤੁਹਾਨੂੰ ਫੰਕਸ਼ਨ ਸ਼ਾਮਲ ਕਰਨਾ ਹੋਵੇ, ਤਾਂ ਇਸ ਨੂੰ ਸਟਰਿੰਗ ਵਿੱਚ ਲਿਖੋ。

ਬਾਅਦ ਵਿੱਚ ਤੁਸੀਂ ਇਸ ਨੂੰ ਫੰਕਸ਼ਨ ਵਿੱਚ ਬਦਲ ਸਕਦੇ ਹੋ:

ਉਦਾਹਰਣ

ਸਟਰਿੰਗ ਨੂੰ ਫੰਕਸ਼ਨ ਵਿੱਚ ਬਦਲੋ:

var text =  '{ "name":"Bill Gates", "age":"function () {return 62;}", "city":"Seattle"}';
var obj = JSON.parse(text);
obj.age = eval("(" + obj.age + ")");
document.getElementById("demo").innerHTML = obj.name + ", " +  obj.age();

ਆਪਣੇ ਹੀ ਪ੍ਰਯੋਗ ਕਰੋ

ਤੁਸੀਂ JSON ਵਿੱਚ ਫੰਕਸ਼ਨ ਵਰਤਣਾ ਬਿਨਾਂ ਚਾਹੀਦੇ, ਫੰਕਸ਼ਨ ਉਨ੍ਹਾਂ ਦੇ ਸਕੋਪ ਨੂੰ ਹਾਰ ਜਾਂਦੇ ਹਨ, ਅਤੇ ਤੁਸੀਂ ਆਪਣੇ ਹੀ ਵਰਤਣਾ ਹੋਵੇਗਾ eval() ਉਨ੍ਹਾਂ ਨੂੰ ਫੰਕਸ਼ਨ ਵਾਪਸ ਬਦਲਨਾ

ਬਰਾਊਜ਼ਰ ਸਮਰਥਨ

ਸਾਰੇ ਮੁੱਖ ਬਰਾਊਜ਼ਰਾਂ ਅਤੇ ਨਵੇਂਤਰ ECMAScript (JavaScript) ਮਿਆਰ ਸ਼ਾਮਿਲ ਹਨ JSON.parse() ਫੰਕਸ਼ਨ:

ਹੇਠ ਦਿੱਤੇ ਸਥਾਨਾਂ ਵਿੱਚ ਨੰਬਰ ਪੂਰੀ ਤਰ੍ਹਾਂ ਸਮਰਥਨ ਦਿੰਦੇ ਹਨ JSON.parse() ਫੰਕਸ਼ਨ ਦੀ ਪਹਿਲੀ ਬਰਾਊਜ਼ਰ ਸੰਸਕਰਣ:

ਹਾਂ 8.0 3.5 4.0 10.0

ਵੱਧ ਪੁਰਾਣੇ ਬਰਾਊਜ਼ਰਾਂ ਲਈ, ਹੇਠ ਲਿਖੇ ਸਥਾਨਾਂ ਵਿੱਚ ਜਾਵਾਸਕ੍ਰਿਪਟ ਲਾਇਬ੍ਰੇਰੀਆਂ ਉਪਲੱਬਧ ਹਨ:

https://github.com/douglascrockford/JSON-js