Jesteś tutaj: webmade.org >> porady >> javascript
autor: Patryk 'yarpo' Jar, ostatnia modyfikacja: 2007-10-09
W JS operatorem łączącym dwa stringi [ciągi znaków] jest '+'. W prostych wygląda to tak:
<script type="text/javascript"> var string_1 = "To jest"; var string_2 = "tekst"; alert(string_1 + ' ' + string_2); // można oczywiście połączyć to też tak: // alert(string_1 + string_2); </script>
W wyniku tego kodu otrzymamy alert wyświetlający: „To jest tekst”.
Ktoś mógłby zapytać, po co więc ta porada? Otóż, czasem zdarza się, że nie jest tak fajnie, że łączymy tylko dwa stringi, ale chcemy także wpleść w to jaką liczbę. Niestety, jako, że w JS typ danych nie jest na sztywno przypisany do zmiennej [tak, jak np. w C czy Pascalu], to się okazuje, że często dwie liczby zamiast dodać, zostaną połączone, np:
<script type="text/javascript"> var liczba_1 = 5; var liczba_2 = 2; alert('Jacek ma ' + liczba_1 + ' jablek,\n' + 'a Agatka ma ' + liczba_2 + ' gruszki.\n' + 'Razem mają więc ' + liczba_1+liczba_2 + ' owoców!'); </script>
Wynikiem działania tego skryptu będzie: „Jacek ma 5 jabłek, a Agatka ma 2 gruszki. Razem mają 52 owoce!”. Jak widać, niestety zamiast dodać skrypt je złączył – tak jakby operował na tekście. Jest kilka rozwiązań, np objęcie działań nawiasami.
alert('Razem mają więc ' + (liczba_1+liczba_2) + ' owoców!');
Innymi spotykanymi rozwiązaniami jest wprowadzenie dodatkowego działania, które nie zmienia jednak wartości. Np '*1'. Jakakolwiek liczba pomnożona razy 1, da samą siebie.
Problem wydaje się banalny, ale w wielu przypadkach może naprawdę sporo zepsuć.
Patryk 'yarpo' Jar
szukaj: łączenie dwóch ciągów znaków łączenie stringów JavaScript JS
Osoby czytające tę publikację przeglądały również:
© 2004-2008 copyright by webmade.org