webmaster webmastering webdesign

Jesteś tutaj: webmade.org >> porady >> javascript

Łączenie stringów

autor: Patryk 'yarpo' Jar, ostatnia modyfikacja: 2007-10-09

szukaj: łączenie dwóch ciągów znaków łączenie dwóch ciągów znaków łączenie stringów łączenie stringów JavaScript JavaScript JS JS

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

Osoby czytające tę publikację przeglądały również:

Chcesz zostać programistą?

Poznaj 6 kroków do efektywnej
nauki programowania!

 

valid XHTML
valid CSS
© 2004-2008 copyright by webmade.org