"Que signifie?"
P粉358281574
2023-08-17 10:48:39
<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>
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 !
stringify(function (){})
->[object Function]
stringify([])
->[object Array]
stringify(/x/)
->[object RegExp]
stringify(new Date)
->[object Date]
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.
où
stringify
devrait être comme ceci :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
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.