Dans une partie de mon code, j'explète des données d'un fichier JSON et je l'ai placée dans un tableau basé sur un objet.
Je reçois les données avec succès et que vous pouvez mettre sur un seul objet dans un tableau. Le seul problème est que je veux donner un nom à chaque objet. p>
p>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
3 Réponses :
Vous pouvez nommer votre obj avec code comme ci-dessous
var playlist_data = {
"Music1": {
"soundcloud": "Soundcloud Music 1",
"spotify": "Spotify Music 1"
},
"Music2": {
"soundcloud": "Soundcloud Music 2",
"spotify": "Spotify Music 2"
},
"Music3": {
"soundcloud": "Soundcloud Music 3",
"spotify": "Spotify Music 3"
},
"Music4": {
"soundcloud": "Soundcloud Music 4",
"spotify": "Spotify Music 4"
}
};
var links = [];
$.each(playlist_data, function(index, element) {
links.push({
spotify: element.spotify,
soundcloud: element.soundcloud,
});
});
let myMusic = {};
for(let x = 0 ; x < links.length ; x++)
{
let z = Number(x+1);
myMusic["music"+z] = links[x];
}
console.log(myMusic.music1);
Comme il semble que vous souhaitiez utiliser le Il existe deux types de tableau dans JS: P> tableau standard qui est: tableau associatif qui est: Comme vous le voyez peut-être Utiliser Spotify code> comme une touche pour les liens code>. [] code> p> {} code>! p> {} code> qui est également comme un objet en JavaScript sous forme de tableau. Et puis vous pouvez utiliser Spotify code> comme clé.
Donc, votre code sera comme ci-dessous: P> var links = {};
$.each(playlist_data, function(index, element) {
links[index] = {
spotify: element.spotify,
soundcloud: element.soundcloud,
};
});
console.log(links_s.Music1.spotify) // Spotify Music 1
Étant donné que JavaScript ne prend pas en charge les index nommés, vous devez faire p> liens code> un objet afin d'accéder à ses propriétés via links.music2.spotify code>. Ceci est facilement fait cependant, cela vous donnerait exactement les mêmes données que vous avez commencées par: <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
Vous ne pouvez pas nommer des éléments dans un tableau, vous devez donc utiliser un objet. Cependant i> alors vous êtes de retour à la même structure de données exacte i> la même structure de votre JSON, donc votre boucle est totalement redondante
@RoryMCcrossan Oui c'est vrai. Mais le fichier JSON principal est beaucoup plus long que cela avec diverses données. J'aime donc faire une version plus petite de Main Json avec des données spécifiques.
Dupliqué possible de Comment obtenir un sous-ensemble d'un objet JavaScript Propriétés Voir aussi Un-doublure pour prendre des propriétés de l'objet dans ES 6
et JavaScript donnez une clé de tableau un nom tout en effectuant un tableau 'Push' '