recherche

Maison  >  Questions et réponses  >  le corps du texte

"Que signifie?"

<p>J'essaie de <code>alert</code> la valeur renvoyée par une fonction et j'obtiens ce qui suit dans la fenêtre contextuelle : </p> <pre class="brush:none;toolbar:false;">[objet Objet] ≪/pré> <p>Voici le code JavaScript : </p> <pre class="brush:html;toolbar:false;"><script type="text/javascript"> $(fonction () { var $main = $('#main'), $1 = $('#1'), $2 = $('#2'); $2.hide(); // Masquer le div#2 au chargement de la page $main.click(fonction () { $1.toggle(); $2.toggle(); }); $('#senddvd').cliquez(fonction () { alert('bonjour'); var a=quiEstVisible(); alert(whichIsVisible()); }); fonction whichIsVisible() { if (!$1.is(':hidden')) renvoie 1 $ ; if (!$2.is(':hidden')) renvoie 2 $ ; } }); </script> ≪/pré> <p><code> WhichIsVisible</code> est la fonction que j'essaie de vérifier. </p>
P粉358281574P粉358281574577 Il y a quelques jours1000

répondre à tous(2)je répondrai

  • P粉458913655

    P粉4589136552023-08-18 09:58:57

    Comme d'autres l'ont souligné, il s'agit de la sérialisation par défaut d'un objet. Mais pourquoi [object Object]而不只是[object] ?

    C'est parce qu'il existe différents types d'objets en Javascript !

    • Objet fonction :
      stringify(function (){}) -> [object Function]
    • Objet tableau :
      stringify([]) -> [object Array]
    • Objet d'expression régulière :
      stringify(/x/) -> [object RegExp]
    • Objet Date :
      stringify(new Date) -> [object Date]
    • Et plus encore
    • Aussi objets objets !
      stringify({}) -> [object Object]

    C'est parce que le constructeur est appelé Object (« O » majuscule), tandis que le terme « objet » (« o » minuscule) fait référence à la nature structurelle de l'objet.

    Habituellement, lorsque vous parlez d'"objets" en Javascript, vous voulez en fait dire "objets objets", pas d'autres types.

    stringify devrait être comme ceci :

    function stringify (x) {
        console.log(Object.prototype.toString.call(x));
    }

    répondre
    0
  • P粉465287592

    P粉4652875922023-08-18 09:48:03

    Le résultat par défaut de la conversion d'un objet en chaîne est "[object Object]".

    Puisque vous utilisez des objets jQuery, vous souhaiterez peut-être procéder comme suit

    alert(whichIsVisible()[0].id);

    Pour imprimer l'ID de l'élément.

    Comme mentionné dans les commentaires, vous devez utiliser les outils inclus dans les navigateurs comme Firefox ou Chrome pour inspecter les objets au lieu d'utiliser alert,可以执行console.log(whichIsVisible()).

    P.S. : l'identification ne doit pas commencer par un numéro.

    répondre
    0
  • Annulerrépondre