it-swarm.asia

تحويل كائن JS إلى سلسلة JSON

إذا قمت بتعريف كائن في JS باستخدام:

var j={"name":"binchen"};

كيف يمكنني تحويل الكائن إلى JSON؟ يجب أن تكون سلسلة الإخراج:

'{"name":"binchen"}'
1125
Bin Chen

جميع المتصفحات الحالية لديها دعم JSON أصلي مدمج. طالما أنك لا تتعامل مع متصفحات ما قبل التاريخ مثل IE6/7 ، يمكنك القيام بذلك بنفس السهولة:

var j={"name":"binchen"};
JSON.stringify(j); // '{"name":"binchen"}'
1758
Andris

مع JSON.stringify() موجود في json2.js أو أصلي في معظم المتصفحات الحديثة.

   JSON.stringify(value, replacer, space)
        value       any JavaScript value, usually an object or array.

       replacer    an optional parameter that determines how object
                    values are stringified for objects. It can be a
                    function or an array of strings.

       space       an optional parameter that specifies the indentation
                    of nested structures. If it is omitted, the text will
                    be packed without extra whitespace. If it is a number,
                    it will specify the number of spaces to indent at each
                    level. If it is a string (such as '\t' or ' '),
                    it contains the characters used to indent at each level.

       This method produces a JSON text from a JavaScript value.
99
Ignacio Vazquez-Abrams

تحقق من تحديث/أفضل طريقة:

تحديث 17 مايو 2008: تمت إضافة المطهر الصغير إلى طريقة toObject. لن تقوم toObject () الآن بتحرير السلسلة إذا عثرت على أي تعليمات برمجية ضارة فيها. لمزيد من الأمان: لا تقم بتعيين إشارة includeFunctions على true.

كتب دوغلاس كروكفورد ، والد مفهوم JSON ، واحدًا من أوائل مصممي الجافا سكريبت. كتب ستيف ين في وقت لاحق من تريم باث نسخة محسنة من نيس استخدمتها لبعض الوقت. إنها التغييرات التي أجريتها على إصدار ستيف التي أود مشاركتها معك. في الأساس لقد انبثقت عن رغبتي في جعل صانع الألعاب:

• handle and restore cyclical references  
• include the JavaScript code for functions/methods (as an option)  
• exclude object members from Object.prototype if needed.
27
Sarfraz

يمكنك استخدام JSON.stringify () طريقة لتحويل كائن JSON إلى سلسلة.

var j={"name":"binchen"};
JSON.stringify(j)

بالنسبة للعملية العكسية ، يمكنك استخدام JSON.parse () method لتحويل JSON String إلى JSON Object.

17
Aravind Sachin

Json Stringify يمكن تحويل كائن js الخاص بك إلى json

 var x = {"name" : "name1"};
 JSON.stringify(x);
14
Aatif Bandey
JSON.stringify({"key":"value"});
10
Om Prakash

إذا كنت تستخدم AngularJS ، فيجب على عامل التصفية "json" القيام بذلك:

<span>{{someObject | json}}</span>
8
Ariel Cabib

في angularJS

angular.toJson(obj, pretty);

obj: إدخال تسلسل إلى JSON.

جميلة (اختياري):
إذا تم تعيينه على صواب ، فسيحتوي خرج JSON على خطوط جديدة ومسافة بيضاء. إذا تم تعيينه على عدد صحيح ، فسيحتوي خرج JSON على العديد من المسافات لكل مسافة بادئة.

(الافتراضي: 2)

8
Nazrul Islam

JSON.stringify(j,null,4) ستمنحك JSON الجميل في حال كنت بحاجة إلى تجميل أيضًا

7
Vignesh Murugan

JSON.stringify يحول كائن Javascript إلى نص JSON ويخزن نص JSON في سلسلة.

التحويل هو كائن إلى سلسلة

JSON.parse تحول سلسلة من نص JSON إلى كائن Javascript.

التحويل هو سلسلة إلى كائن

var j={"name":"binchen"};

لجعله سلسلة JSON التالية يمكن استخدامها.

JSON.stringify({"key":"value"});

JSON.stringify({"name":"binchen"});

لمزيد من المعلومات ، يمكنك الرجوع إلى هذا الرابط أدناه.

https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Global_Objects/JSON/stringify

6
Dulith De Costa

عرف واحد مخصص لهذا ، حتى نفعل غريبة من طريقة stringify

var j={"name":"binchen","class":"awesome"};
var dq='"';
var json="{";
var last=Object.keys(j).length;
var count=0;
for(x in j)
{
json += dq+x+dq+":"+dq+j[x]+dq;
count++;
if(count<last)
   json +=",";
}
json+="}";
document.write(json);

OUTPUT

{"name":"binchen","class":"awesome"}

LIVEhttp://jsfiddle.net/mailmerohit5/y78zum6v/

5
Rohit Kumar

كنت أواجه مشكلات تتعلق بنفاد الذاكرة ونفّذ حلول أخرى لا يبدو أنها تعمل (على الأقل لم أستطع دفعهم إلى العمل) وهو عندما تعثرت في هذا الموضوع. بفضل روهيت كومار أنا مجرد تكرار من خلال كائن JSON كبير جدا لمنعه من الانهيار

var j = MyObject;
var myObjectStringify = "{\"MyObject\":[";
var last = j.length
var count = 0;
for (x in j) {
    MyObjectStringify += JSON.stringify(j[x]);
    count++;
    if (count < last)
        MyObjectStringify += ",";
}
MyObjectStringify += "]}";

سوف يمنحك MyObjectStringify سلسلة تمثيلك (كما هو مذكور في الأوقات الأخرى في هذا الموضوع) إلا إذا كان لديك كائن كبير ، يجب أن يعمل هذا أيضًا - فقط تأكد من تصميمه ليناسب احتياجاتك - احتجت إليه للحصول على اسم من مجموعة

5
Sam
var someObj = { "name" : "some name" };
var someObjStr = JSON.stringify(someObj);
console.log( someObjStr  );
5
Tyler Durden
const obj = { "name":"xxx", "city":"York"};
const myJSON = JSON.stringify(obj);
  console.log(myJSON);
4
Arvind Audacious

ووكينغ ... سهل الاستخدام

$("form").submit(function(evt){
  evt.preventDefault();
  var formData = $("form").serializeArray(); // Create array of object
  var jsonConvert = JSON.stringify(formData);  // Convert to json
});

شكر

3
Subroto Biswas

تحديد الكائن

let obj = {
"firstname" : "Hello",
"lastname" : "javascript"

};

ثم تحويله إلى سلسلة باستخدام هذا الرمز

strObj= JSON.stringify(obj);

للتأكد من وحدة التحكم النتيجة

console.log(strObj);
1
nada diaa
So in order to convert a js object to JSON String: 

بناء الجملة البسيط لتحويل كائن إلى سلسلة هو

JSON.stringify(value)

بناء الجملة الكامل هو: JSON.stringify (value [، replacer [، space]])

دعنا نرى بعض الأمثلة البسيطة. لاحظ أن السلسلة بأكملها تحصل على علامات تنصيص مزدوجة وسيتم إفلات جميع البيانات الموجودة في السلسلة إذا لزم الأمر.

JSON.stringify("foo bar"); // ""foo bar""
JSON.stringify(["foo", "bar"]); // "["foo","bar"]"
JSON.stringify({}); // '{}'
JSON.stringify({'foo':true, 'baz':false}); /* " 
{"foo":true,"baz":false}" */



const obj = { "property1":"value1", "property2":"value2"};
const JSON_response = JSON.stringify(obj);
console.log(JSON_response);/*"{ "property1":"value1", 
"property2":"value2"}"*/
1
Rahul Choudhary

إذا كنت ترغب في الحصول على قيمة خصائص json بتنسيق السلسلة ، استخدم الطريقة التالية

var i = {"x":1}

var j = JSON.stringify(i.x);

var k = JSON.stringify(i);

console.log(j);

"1"

console.log(k);

'{"x":1}'
1
KARTHIKEYAN.A

بدائل JSON الحالية حيث الكثير بالنسبة لي ، لذلك كتبت وظيفتي الخاصة. يبدو أن هذا الأمر ناجح ، لكن ربما فاتني العديد من حالات Edge (التي لا تحدث في مشروعي). ومن المحتمل ألا يعمل مع أي كائنات موجودة مسبقًا ، فقط للبيانات التي يتم إعدادها ذاتيًا.

function simpleJSONstringify(obj) {
    var prop, str, val,
        isArray = obj instanceof Array;

    if (typeof obj !== "object") return false;

    str = isArray ? "[" : "{";

    function quote(str) {
        if (typeof str !== "string") str = str.toString();
        return str.match(/^\".*\"$/) ? str : '"' + str.replace(/"/g, '\\"') + '"'
    }

    for (prop in obj) {
        if (!isArray) {
            // quote property
            str += quote(prop) + ": ";
        }

        // quote value
        val = obj[prop];
        str += typeof val === "object" ? simpleJSONstringify(val) : quote(val);
        str += ", ";
    }

    // Remove last colon, close bracket
    str = str.substr(0, str.length - 2)  + ( isArray ? "]" : "}" );

    return str;
}
1
Hauke

يمكنك استخدام وظيفة stringify الأصلي مثل هذا

const j={ "name": "binchen" }

/** convert json to string */
const jsonString = JSON.stringify(j)

console.log(jsonString) // {"name":"binchen"}
1
Alongkorn Chetasumon

يمكنك استخدام JSON.stringify (j) والتي ستحول ملف JSON إلى سلسلة.

0
MH-Li

كل ما تحتاجه هو إضافة هذا الرمز أدناه
var j={"name":"binchen"}; JSON.stringify(j); // '{"name":"binchen"}'

0
ubastosir

يمكنك استخدام وظيفة JSON.stringify () للقيام بذلك.

0
Mitesh Panchal
var j={"name":"binchen"};
var x= json.stirngify(j);

سيقوم هذا بتحويلJSONكائن إلى Stingified كائن

ل طريقة واحدة ملزمة يمكنك القيام بذلك في هتمل

<span>{{j|json}}</span>

0
Vignesh

لتصحيح الأخطاء في Node JS ، يمكنك استخدام util.inspect () . يعمل بشكل أفضل مع المراجع الدائرية.

var util = require('util');
var j = {name: "binchen"};
console.log(util.inspect(j));
0
Pavel Netesa

JSON.strigify() هي أفضل ممارسة لذلك.

var x = {
    "name" : "name1",
    "age"    : 20
};
var json = JSON.stringify(x);
console.log(json);
0
Rakibul