2013-08-09 11 views
8

W javascript mam zmienną, którą popycham do console.log, a następnie zwiększ ją i ponownie wepchnij do logu, co pokazuje poniższy tekst w narzędziach deweloperskich Chrome.Niebieski numer w konsoli deweloperów Chrome?

Zmienna ta zrobiła trochę freaky rzeczy, jak gdy próbuję użyć operatora += dodać do niego, to rzeczywiście daje wartość dodaną po numerze (na przykład, jeśli x=5 i zrobiłem x+=3, x będzie równa 53). Naprawdę zadziwiającą częścią tego jest to, że inkrementacja z ++ działa zgodnie z oczekiwaniami, ale moje pytanie nie brzmi, dlaczego tak się dzieje, ale raczej dlaczego zwiększona liczba jest niebieska w konsoli? Gdyby ktoś mógł mi powiedzieć, jakie są przypadki, w których powyższe by się wydarzyło, byłoby wspaniale, ale mam wrażenie, że niebieski wpis w konsoli jest z nim powiązany.

Dlaczego więc w konsoli do Chrome Chrome numer był wyświetlany na niebiesko?

Odpowiedz

12

Po wydrukowaniu ciągu znaków za pomocą console.log otrzymasz czarny sygnał wyjściowy. Jeśli jednak wydrukujesz numer, jego wydruk jest niebieski. Zobacz zrzut ekranu poniżej (nie przejmuj się liniami z "niezdefiniowaną" wartością, ponieważ domyślnie jest to domyślnie zwracana wartość: console.log()).

console.log() output

I masz rację, twoje problemy z += są w jakiś sposób związane z tymi kolorami. Dodałeś numer do łańcucha, który spowodował konkatenację (53).

+0

Cóż, jeśli jest to ciąg znaków, który wyjaśnia, dlaczego użycie + = doprowadziłoby do końca, teraz po prostu muszę dowiedzieć się, dlaczego jest to ciąg w pierwszej kolejności. Dziękuję Ci bardzo! – Cains

+0

@Konrad, jaki jest powód zmiany koloru? – Pacerier

Powiązane problemy