Zephyrnet Logosu

JSON'u JavaScript Nesnesine Dönüştürme

Tarih:

JSON'u JavaScript Nesnesine Dönüştürme

JSON (JavaScript Nesne Gösterimi) insan tarafından okunabilir, basit ve küçük boyutlu olması nedeniyle REST API'leri için fiili serileştirme formatı haline geldi.

JavaScript nesnelerini tanımlamak için kullanılan aynı gösterimi kullanır ve doğal olarak, bir JSON dizesi ile JavaScript nesneleri arasında dönüştürme yapmak son derece basittir.

Aşağıdaki JSON dizesiyle çalışacağız:

const jsonString = '{"author" : "Plato", "name" : "Republic", "releaseYear" : "375BC"}';

JSON Dizesini JavaScript Nesnesine Dönüştür

The JSON modül iki yöntem sunar – stringify()bir JavaScript nesnesini bir JSON Dizesine dönüştüren ve parse()bir JSON dizesini ayrıştıran ve bir JavaScript nesnesi döndüren .

Dilin içine yerleştirilmiştir, bu nedenle herhangi bir bağımlılık yüklemeye veya içe aktarmaya gerek yoktur:

const book = JSON.parse(jsonString);
console.log('Type: ', typeof book);
console.log('Contents: ', book)

Bunun sonucu:

Type: object
Contents: { author:"Plato", name:"Republic", releaseYear:"375BC"
}

Baştan çıkarılabilirsin eval() bir nesneye bir dize, ancak pratikten bıkmayın:

const book = eval("(" + jsonString + ")")
console.log('Type: ', typeof book);
console.log('Contents: ', book)

Bu gayet iyi çalışıyor:

Type: object
Contents: { author:"Plato", name:"Republic", releaseYear:"375BC"
}

Bununla birlikte, bu yöntem aynı zamanda kod enjeksiyonuna da duyarlıdır. eval() çalıştırılabilmesi koşuluyla, girdiğiniz herhangi bir keyfi metni değerlendirecek ve yürütecektir. Eğer bizim jsonString şu şekilde değiştirildi:

const jsonString = 'console.log("Malicious code")';

O zaman sadece değerlendirmek şu şekilde sonuçlanır:

const book = eval("(" + jsonString + ")") 

JavaScript'in, büyük ölçüde müşterinin makinesinde çalıştığı, tarayıcıda istedikleri herhangi bir kodu değerlendirip çalıştırabilecekleri bir gerçektir. Bununla birlikte, son yıllarda büyük bir paradigma değişikliği meydana geldi ve JavaScript giderek daha fazla kullanılıyor. sunucu tarafı ilave olarak. Code Injection güvenliği nihayetinde sunucu tarafında düşse de, bunu ön uçta gerçekten engelleyemeyeceğiniz için – JavaScript'in sunucu tarafında da çalışıyor olma olasılığı vardır.

JSON Dizesini JavaScript Dizisine Dönüştür

En iyi uygulamalar, endüstri tarafından kabul edilen standartlar ve dahil edilen hile sayfası ile Git'i öğrenmek için uygulamalı, pratik kılavuzumuza göz atın. Googling Git komutlarını durdurun ve aslında öğrenmek o!

JSON'u herhangi bir rastgele nesneye ayrıştırabilmenize rağmen – verileri dönüştüreceğiniz ortak bir veri yapısı dizilerdir. JSON dizileri köşeli parantez içinde bulunur ve dizilerin öğeleri virgülle ayrılır:

[element1, element2, element3]

Bir öğe, bağımsız bir öğe, başka bir JSON nesnesi veya sırayla bu türlerden herhangi birini içerebilen başka bir dizi olabilir. İki diziye bir göz atalım – birkaç elemanlı basit bir dizi ve birkaç JSON nesnesi içeren dizi:

const simpleArrayJson = '["Java", "Python", "JavaScript"]';
const objectArrayJson = '[{"name": "Java", "description": "Java is a class-based, object-oriented programming language."},{"name": "Python", "description": "Python is an interpreted, high-level and general-purpose programming language."}, {"name": "JS", "description": "JS is a programming language that conforms to the ECMAScript specification."}]'; const simpleArray = JSON.parse(simpleArrayJson);
const objectArray = JSON.parse(objectArrayJson); console.log(simpleArray);
console.log(objectArray);

Bunun sonucu:

[ "Java", "Python", "JavaScript"
] [ { name:"Java", description:"Java is a class-based, object-oriented programming language." }, { name:"Python", description:"Python is an interpreted, high-level and general-purpose programming language." }, { name:"JS", description:"JS is a programming language that conforms to the ECMAScript specification." }
]

Sonuç

Bu kısa eğitimde, bir JSON dizesinin bir JavaScript nesnesine nasıl dönüştürüleceğine bir göz attık ve kodunuzda güvenlik açıkları oluşturabilecek kötü bir uygulamaya dikkat çektik.

Son Güncelleme: Ocak 20th, 2022

Bu makale yardımcı oldu mu?

Bunları da sevebilirsiniz…

Gelen kutunuza öğreticiler, kılavuzlar ve geliştirme işleri alın.

David LandupYazar

Yaşam Bilimleri (Biyoinformatik, İlaç Keşfi, Genomik), Sinirbilim (Hesaplamalı Sinirbilim), robotik ve BCI'lerde Hesaplama ve Derin Öğrenme uygulamalarına derin bir hayranlık duyan Girişimci, Yazılım ve Makine Öğrenimi Mühendisi.

Erişilebilir eğitim ve akıl, bilim, hümanizm ve ilerlemenin teşviki için büyük tutku.

  • Her gün bir kodlama problemini çözerek becerilerinizi geliştirin
  • Çözümleri ertesi sabah e-posta yoluyla alın
  • üzerinde pratik yap gerçek sorunlar en iyi şirketler tarafından sorulur, örneğin:

AWS bulutunda Node.js uygulamalarını tedarik etmek, dağıtmak ve çalıştırmak için ihtiyaç duyacağınız temeli oluşturun. Lambda, EC2, S3, SQS ve daha fazlasını öğrenin!

© 2013-2022 Yığın Kötüye Kullanımı. Her hakkı saklıdır.

Kaynak: https://stackabuse.com/how-to-convert-json-to-javascript-object/

spot_img

En Son İstihbarat

spot_img

Bizimle sohbet

Merhaba! Size nasıl yardım edebilirim?