2010-10-09 17 views
11

W języku Ruby można wykonać foo.inspect i generuje coś normalnego dla dowolnego obiektu, niezależnie od jego typu.Co to jest odpowiednik kodu JavaScript "inspekcji" Ruby?

Jak osiągnąć to samo w JavaScript?

+3

Co jest nie tak z 'console.log (foo)'? –

+0

Matt's to poprawna odpowiedź, IMHO. –

+2

@MattBall, @ AaronGray..'console.log' jest niepoprawny, ponieważ zarówno 'console.log (" 1 ")' jak i 'console.log (1)' wydrukują te same dane wyjściowe. Nie będzie możliwe określenie, czy typ zmiennej jest używany w pliku console.log. – rubyprince

Odpowiedz

4

Prawdopodobnie nie jest to ogólna ogólna odpowiedź, na którą masz nadzieję, ponieważ wprowadza ona do twojej aplikacji zależności od podmiotów zewnętrznych. Jednak są one warto wspomnieć:

  • Do zastosowań przy użyciu Prototype (link) można użyć Object.inspect (link)
  • Dla zastosowań przy użyciu jQuery (link) nie jest jquery-inspect (link) Wtyczka
10

JSON.stringify(foo) działa całkiem dobrze.

+0

To jest poprawna odpowiedź, sprawdź w rubinie jest funkcja/metoda, która jest łatwo dostępna w języku. Ta odpowiedź jest najbliżej tego. – Thomas

+0

Poza tym, że wygląda brzydko, na ogół to działa. Mam nadzieję, że poprawią go w przyszłych wersjach ECMAScript. –

Powiązane problemy