Comment copier la variable JavaScript dans Chrome?

j'ai mis un point de rupture dans javascript et je teste du code avec Chrome. J'ai aussi ajouté une expression de montre pour la valeur.

Chrome se casse au point de rupture et affiche la valeur. Cependant la valeur est très longue, et il ne l'affiche pas tout. J'ai déplacer le séparateur de fenêtre vers la gauche, mais il s'arrête au milieu de l'écran. Quand je double-clique sur la variable regardée il veut éditer l'expression. Quand je clique et fais glisser sur elle, elle sélectionne le texte visible, mais pas tous. Clic droit ne fait rien.

C'est ce que je vois

url: "m=mtgoxUSD&SubmitButton=Draw&r=&i=&c=0&s=&e=&Prev=&Next=&t=S&b=&a1=&m1=10&a2=&m2=25&x=0...

je veux copier toute l'expression sans le ... à la fin. Comment puis-je le faire?

30
demandé sur siamii 2012-03-22 07:51:21

5 réponses

voilà ce que je fais.

Edit: cela fonctionne dans les Variables Scope qui est sous le Panneau Watch Expressions.

  1. double clic sur la valeur pour passer en mode édition.

  2. Ctrl+a (windows) ou Cmd+a (mac) pour sélectionner la valeur entière.

  3. Ctrl+C (ou Cmd+C) à copier.

9
répondu Ben 2012-03-22 04:02:08

j'ajoute une réponse tardive après presque 3 ans parce qu'avec les outils actuels de Chrome Dev, aucune approche ne fonctionne si vous avez un tableau ou même juste une propriété d'objet imbriquée dans cette variable, en suivant les deux réponses, vous finirez par copier une chaîne avec beaucoup de Array[size] ou Object chaînes entrelacées dans la valeur de l'objet réel, complètement inutile pour les hiérarchies d'objets complexes.

Les approches suggérées sont ok si vous avez juste besoin d'manuellement naviguez à travers la valeur, mais pas si vous devez la Copier comme demandé dans la question.

ce que je recommande à la place, surtout si vous avez besoin de copier la valeur observée pour l'utiliser comme contenu d'une nouvelle variable, est de la balancer à la console après qu'elle ait été stringifiée.

afficher la console Javascript et taper:

console.log(JSON.stringify(my_watched_var))

de Cette façon, la structure complète sera affichée en pur Javascript, entièrement réutilisable/copiable.

32
répondu Umberto Raimondi 2015-05-04 11:47:04

afficher la console, puis taper l'expression à afficher et appuyer . Vous verrez la valeur entière et vous pourrez la sélectionner et la copier.

pendant que le débogueur est mis en pause, cela fonctionne même avec des expressions qui impliquent des variables locales qui sont dans la portée au point d'exécution actuel.

27
répondu L.N. 2014-08-04 14:44:52

la ligne de commande de la console de Chrome DevTools est dotée d'une fonction "copier" intégrée:

copy(my_variable)

si la valeur de my_variable n'est pas une chaîne de caractères, elle sera automatiquement convertie en JSON. La chaîne résultante est laissée sur le bloc-notes du système pour le collage.

voici le document de référence .

21
répondu emackey 2016-07-12 15:38:30

Regardez cette réponse " Est-il un moyen d'auto étendre les objets en Chrome Dev Tools? ", il itère à travers toutes les propriétés d'un objet et il affiche la hiérarchie complète, y compris le type de données et les valeurs.

Utile si vous avez besoin de comparer deux états d'une application.

1
répondu Matteo Conta 2017-05-23 11:54:47