ciągi JavaScript są wykorzystywane do przechowywania i manipulowania tekstem.
JavaScript Struny
Łańcuch JavaScript prostu zapisuje ciąg znaków takich jak "John Doe" .
Łańcuch może być dowolny tekst wewnątrz cudzysłowów. Można używać pojedynczych lub podwójnych cudzysłowów:
Można używać cytatów wewnątrz łańcucha, o ile nie są one zgodne z cudzysłowy łańcuch:
Przykład
var answer = "It's alright";
var answer = "He is called 'Johnny'";
var answer = 'He is called "Johnny"';
Spróbuj sam " String Length
Długość łańcucha znajduje się w wewnętrznej długości nieruchomości:
Znaki specjalne
Ponieważ ciągi muszą być pisane w cudzysłowie, JavaScript będzie rozumieją ten ciąg:
var y = "We are the so-called "Vikings" from the north."
Ciąg będzie posiekane do "We are the so-called " .
Roztworu, aby uniknąć tego problemu jest zastosowanie postaci \ ucieczki.
Postać backslash ucieczka zamienia znaki specjalne na znaki smyczkowych:
Przykład
var x = 'It\'s alright';
var y = "We are the
so-called \"Vikings\" from the north."
Spróbuj sam " Znak ucieczki (\) mogą być również wykorzystane w celu dodania innych znaków specjalnych w ciągu.
Ta lista znaków specjalnych, które mogą być dodawane do ciągu tekstowego ze znakiem backslash:
Kod | wyjścia |
---|---|
\' | apostrof |
\" | cudzysłów |
\\ | ukośnik wsteczny |
\n | Nowa linia |
\r | powrót karetki |
\t | patka |
\b | Backspace |
\f | wysuw |
Przełamanie linii kodu długiego
Aby uzyskać najlepszą czytelność, programiści często jak uniknąć linie kodu dłuższe niż 80 znaków.
Jeżeli oświadczenie JavaScript nie zmieszczą się na jednej linii, najlepszym miejscem do złamania jest po operatora:
Można też rozbić linię koduw obrębie łańcucha tekstowego z jednym backslashem:
Metoda \ nie jest ECMAScript (JavaScript) standardem.
Niektóre przeglądarki nie pozwalają na przestrzeni tył \ charakteru.
Najbezpieczniejszym (ale trochę wolniej) sposobem na przełamanie długi ciąg jest zastosowanie dodatku ciąg:
Nie można zerwać linię kodu z odwrotnym ukośnikiem:
Łańcuchy mogą być Przedmioty
Normalnie, ciągi JavaScript są wartościami prymitywne, utworzone z literały: var firstName = "John"
Ale łańcuchy mogą być definiowane jako obiekty ze słowem kluczowym new: var firstName = new String("John")
Przykład
var x = "John";
var y = new String("John");
// typeof x will return string
// typeof y will return object
Spróbuj sam " Nie należy tworzyć ciągi jako obiekty. To spowalnia szybkość wykonania.
new kluczowe komplikuje kod. To może produkować pewne nieoczekiwane wyniki:
Podczas korzystania z operatorem równości ==, równe ciągi wygląda równa:
Przykład
var x = "John";
var y = new String("John");
// (x == y) is true because x and y have equal values
Spróbuj sam " Podczas korzystania z operatorem równości ===, równe ciągi nie są równe, ponieważ operator === oczekuje równości zarówno rodzajem i wartością.
Przykład
var x = "John";
var y = new String("John");
// (x === y) is false because x and y have different types
(string and object)
Spróbuj sam " Albo jeszcze gorzej. Obiekty nie mogą być porównywane:
Przykład
var x = new String("John");
var y = new String("John");
// (x == y) is false because x and y are different objects
// (x == x) is
true because both are the same object
Spróbuj sam " obiekty JavaScript nie można porównywać.
Sprawdź się z ćwiczeń!
Ćwiczenie 1 » Ćwiczenie 2» Ćwiczenie 3 » Ćwiczenia 4»