2016-03-31 34 views
0

Nesnelerim var. Bir konsol.log yaparsam, bu verileri görüyorum. Nesnelerin bir dizisindeki bir öğenin değerini değiştirin

[Object,Object,Object] 
0: Object 
    Name: Ria 
    Age: 27 
    Job: Analytics & Review 

1: Object 
    Name: Brian 
    Age: 23 
    Job: Admin 

2: Object 
    Name: Rick 
    Age: 32 
    Job: Analytics & Review 

Job kısmında görebileceğiniz gibi

, ben & sembolü var. &'u & ile değiştirmek istiyorum, çünkü html &'un ayrılmış bir varlıktan beri doğrudan ajax'den geçmesine izin vermiyor.

Birileri, nerede olurlarsa olsunlar & ile &'u nasıl değiştirebileceğimi bildirin.

+0

üzgün, size & ile değiştirmek istediğini göremiyorum (eğer mezar işaretleri 'yüzden görebilirsiniz koymak gerekecek), ve ne kadar denediniz mi? – indubitablee

+1

http://stackoverflow.com/questions/6807180/how-to-escape-a-json-string-to-have-it-in-a-url –

+0

Bu nesneyi nasıl kullanmak istediğinizi örnek olarak gösterebilir ve '& 'neden kodlanmalı? – Grundy

cevap

1

Sen

var data = [{ Name: 'Ria', Age: 27, Job: 'Analytics & Review'}, 
      { Name: 'Brian', Age: 23, Job: 'Admin'}, 
      { Name: 'Rick', Age: 32, Job: 'Analytics & Review'}]; 

data.forEach(function(currentValue, index, array) { 
    array[index] = JSON.parse(JSON.stringify(array[index]).replace('&', '&amp')); 
}); 
+0

niçin JSON.parse (JSON.stringify ('? – Grundy

+0

@Grundy, değiştirme yöntemi nedeniyle ... sadece dizelerle değiştirmeyi kullanabilirsiniz. Eğer varsa, '&' değiştirmek isterseniz, bunu Bundan sonra, dizgeyi json olarak ayrıştırmak ve dizideki eski nesneyi değiştirmeniz gerekir. –

+0

, bu nedenle neden sadece gerekirse dizgeye dönüştürülmeli, yoksa eğer "currentValue" srting ise değiştirilsin mi? – Grundy

1

Fikir convert your entire array of object into string sokmak ve daha sonra use regex to replace the symbol ve sonra geri dizesinden nesnelerin dizisi geri ayrıştırmak değiştirebilirsiniz. Bunu dene.

var newArray = JSON.parse(JSON.stringify(array).replace(/&/g,'&amp'));

İlgili konular