Partage
  • Partager sur Facebook
  • Partager sur Twitter

mettre espace dans Object.getOwnPropertyNames

insérer un espace dans le retour de la fonction Object.getOwnProperty

Sujet résolu
    5 décembre 2017 à 20:33:58

    bonjour à tous, 

    je souhaiterais insérer un espace au sein des mots retournés par la fonction Object.getOwnProperty. 

    Par défaut tous les mots sont comme collés les uns autres autres. 

    exemple avec ce code : 

    	var allCharacters ={} ;
    
    	
    	charactersBuilder = function () {
    
    	 charactersBuilt = {} ; 
        
    	return  charactersBuilt };
    
    	
    	allCharacters.zeroOne= charactersBuilder.apply() ; 		
    	 allCharacters.firstOne= charactersBuilder.apply() ;
    	allCharacters.secondOne=  charactersBuilder.apply(); 
    
    alert(Object.getOwnPropertyNames(allCharacters)) ;
    // result = zeroOne,firstOne,secondOne sans espaces...
    // j'aimerais justement ajouter de tels espaces pour tendre vers le résultat suivant :
    // zeroOne, firstOne, secondOne


    bien à vous 

    -
    Edité par Laurent_dchtl 5 décembre 2017 à 20:35:16

    • Partager sur Facebook
    • Partager sur Twitter
      5 décembre 2017 à 21:12:18

      Salut,

      Tu peux regarder du côté de https://developer.mozilla.org/fr/docs/Web/JavaScript/Reference/Objets_globaux/Array/join  avec comme séparateur ', ' puisque getOwnPropertyNames te renvoie un tableau.

      Sinon c'est quoi l'objectif de ce code ?

      -
      Edité par WillyKouassi 5 décembre 2017 à 21:13:14

      • Partager sur Facebook
      • Partager sur Twitter
      le bienfait n'est jamais perdu
        6 décembre 2017 à 2:22:20

        Merci pour ta réponse WillyKouassi,

        l'objectif est tout simplement de m'entraîner, je créer une petite game-appli,

        là j'ai réussi à afficher les noms, maintenant j'essaie d'afficher le numéro des personnages avant leur nom 

        allCharacters.zeroOne= charactersBuilder.apply() ;     
        allCharacters.firstOne= charactersBuilder.apply() ;
        allCharacters.secondOne=  charactersBuilder.apply();
        // résultat souhaité : alert(xx) --> " 1- zeroOne, 2- firstOne, 3- secondOne " 

        et là c'est regalère ^^, si tu as une idée de comment l'insérer je suis preneur, parmi d'autres, j'ai essayé la solution suivante sans succès : 

        ici la fonction qui est censé affiché comme souhaité ci-dessus :

        displayArrayOfName = function (){
        	var hostName = []
        	var counterName = 0 ; 
        	for (i = 0 ; i< this.length ; i ++) {
        	counterName++ ;
        	hostName += [counternName + "-"+ (this[i]) ]
        	
        		return hostName	};

        bien cordialement

        -
        Edité par Laurent_dchtl 6 décembre 2017 à 2:26:04

        • Partager sur Facebook
        • Partager sur Twitter
          6 décembre 2017 à 8:01:45

          Bonjour,

          Object.getOwnPropertyNames() te renvoit un tableau. A partir d'ici, tu peux itérer sur chacun des éléments du tableau et renvoyer un version modifiée des éléments itérés. Comme c'est un tableau et que tu souhaites avoir une chaîne de caractère, tu peux transformer le tableau en chaîne de caractères.

          Démo JSFiddle.

          -
          Edité par Walter O'Brien 6 décembre 2017 à 8:02:13

          • Partager sur Facebook
          • Partager sur Twitter
            6 décembre 2017 à 16:12:39

            Merci pour ton retour Walter,

            Je vais bidouiller tout cela pour voir ce que ça rend, 

            Bien cordialement 

            edit : top la démonstration sur JSfiddle, tu as assuré (y) !

            -
            Edité par Laurent_dchtl 6 décembre 2017 à 16:15:45

            • Partager sur Facebook
            • Partager sur Twitter

            mettre espace dans Object.getOwnPropertyNames

            × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
            × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
            • Editeur
            • Markdown