javascript - Comment parcourir la structure de données JSON renvoyée par l'arrière-plan si elle est trop profonde?
某草草
某草草 2017-05-19 10:18:40
0
3
637

Comment parcourir les données json avec cette structure pour obtenir la plus profonde, et j'utilise la méthode d'épissage de chaînes. Si je rends ci-dessous, je ne peux utiliser qu'une boucle for. Existe-t-il un moyen d'utiliser une grande boucle for pour. le parcourir ? Publier des données ? ? ? S'il vous plaît, aidez

某草草
某草草

répondre à tous(3)
漂亮男人

Je suis d'accord avec ce qui précède, utilisez des modèles js tels que artTemplate et autres.
Si vous insistez pour utiliser la concaténation de chaînes, c'est une boucle dans une boucle. Ce n'est rien de plus que d'ajouter un peu de sucre syntaxique.
Comme suit.

(
    ()=>{
        const data=[
            {
                id:10,
                name:"jack",
                lists:[
                    {
                        item:"水泥",
                        num:323
                    },
                    {
                        item:"钢筋",
                        num:111
                    }
                ]
            },
            {
                id:15,
                name:"tom",
                lists:[
                    {
                        item:"西瓜",
                        num:44
                    },
                    {
                        item:"桔子",
                        num:66
                    }
                ]
            }
        ];
        
        const getHtml=({name,id,lists})=>`<li>
            <p>我叫${name},我的工号是${id}</p>
            <p>我有一批货物,它们分别是:</p>
            <section>
                ${lists}
            </section>
        </li>
        `;
        
        const getList=({item,num})=>`<p>货物名:${item},货物编号:${num}。</p>\n`;
        
        let result="";
        
        data.forEach(person=>{
            const {name,id}=person;
            let lists="",
                _lists=person.lists;
            _lists.forEach(list=>{
                const {item,num}=list;
                lists+=getList({item,num});
            });
            result+=getHtml({name,id,lists});
        });
        
        console.log(result);
    }
)();

Les résultats sont les suivants

Ty80

Réponse simple : utilisez les fonctions.

Réponse complexe : chaque couche d'objet utilise une fonction pour la convertir en chaîne, puis la colle dans la couche la plus externe.

Une approche plus intelligente : n'utilisez pas jQuery. Si vous devez être compatible avec IE9-, utilisez Knockout.js, avalon.js. Si ces vieux gars et dames peuvent être abandonnés, utilisez VueJS, Angular 4.0+, React. Alors donnez-leur un indice : votre navigateur est trop ancien.

Ty80

Dans ce cas, il est recommandé d'utiliser le modèle js. Il est trop difficile d'épisser les chaînes vous-même

.
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!