Jak konwertować wartości na ciągi w JavaScript

Wbudowana funkcja String, metoda toString i nie tylko

Zdjęcie autorstwa freestocks na Unsplash.

W tym poście przyjrzymy się 4 różnym dobrym i złym sposobom konwersji wszelkiego rodzaju wartości na ciągi.

Rozważymy następujące wartości do konwersji.

console.log(typeof 1);
//number
console.log(typeof true)
//boolean
console.log(typeof null)
//object
console.log(typeof undefined)
//undefined
console.log(Array.isArray([1,2,3]))
//true
console.log(typeof { msg: 'Hi' })
//object
console.log(typeof Symbol('id'));
//symbol

Korzystanie z wbudowanej funkcji String

Wbudowana Stringfunkcja może konwertować dowolną wartość na ciąg. Jest to najlepsza opcja do konwersji typów pierwotnych na łańcuchy.

String(1)
//'1'
String(true)
//'true'
String(null)
//'null'
String(undefined)
//'undefined'
String([1,2,3])
//'1,2,3'
String({ msg: 'Hi'})
//'[object Object]'
String(Symbol('id'))
//'Symbol(id)'

Korzystanie z ciągu szablonu

Ciąg szablonu umożliwia osadzone wyrażenia. Te wyrażenia są konwertowane na ciągi. Sprawdź przykłady poniżej.

`${1}`
//'1'
`${true}`
//'true'
`${null}`
//'null'
`${undefined}`
//'undefined'
`${[1,2,3]}`
//'1,2,3'
`${{ msg: 'Hi'}}`
//'[object Object]'

`${Symbol('id')}`
//Cannot convert a Symbol value to a string

W JavaScript wszystkie obiekty dziedziczą po Object.prototype. Oznacza to, że wszyscy mają dostęp do metod przechowywanych w tym obiekcie, w tym toString.

Oto wynik wywołania toStringobiektu lub tablicy.

[1,2,3].toString()
//'1,2,3'
{ msg: 'Hi'}.toString()
//'[object Object]'

const prototype = {
  toString(){
    return JSON.stringify(this);
  }
}
const obj = Object.create(prototype);
obj.msg = 'Hi';
console.log(obj.toString());
//''{"msg":"Hi"}''

Interesujące jest to, że możemy wywołać toStringmetodę na elementach podstawowych, takich jak liczby i wartości logiczne. Sprawdź poniższy kod.

(1).toString()
//'1'
true.toString()
//'true'
Symbol('id').toString()
//'Symbol(id)'

nullDla wszystkich prymitywów z wyjątkiem undefinedJavaScript ma wbudowane funkcje opakowujące, takie jak Numberlub Boolean. Używa tych konstruktorów funkcji do tworzenia obiektów, a następnie wywołuje toStringmetodę na nowo utworzonych obiektach. Coś takiego dzieje się za kulisami:

new Number(1).toString()

null.toString()
//Cannot read property 'toString' of null
undefined.toString()
//Cannot read property 'toString' of undefined

Ostatnią opcją konwersji na łańcuch jest wykonanie konkatenacji łańcuchów. Sprawdź poniższe przykłady.

'' + 1
//'1'
'' + true
//'true'
'' + null
//'null'
'' + undefined
//'undefined'
'' + [1,2,3]
//'1,2,3'
'' + { msg: 'Hi'}
//'[object Object]'

Oto, co dzieje się podczas łączenia zamiast dodawania liczb.

1 + '2'
//'12'

console.log('' + Symbol('id'))
//Cannot convert a Symbol value to a string

To wszystko, czym chciałem się podzielić na temat konwersji ciągów. Dziękuje za przeczytanie.

Suggested posts

Wyszukiwanie informacji o nazwach domen

Fragment książki Small, Sharp Software Tools autorstwa Briana P. Hogana

Wyszukiwanie informacji o nazwach domen

Kiedy wysyłasz żądanie do facebook.com, Twój komputer wyszukuje nazwę domeny, aby przetłumaczyć tę nazwę domeny na adres IP, aby komputer mógł nawiązać to połączenie.

Unikanie niszczycielskich konsekwencji udaru mózgu: nauka z rodzinnej podróży.

Unikanie niszczycielskich konsekwencji udaru mózgu: nauka z rodzinnej podróży.

Wstęp Udar to nagły przypadek medyczny, który może dotknąć każdego w dowolnym momencie. Występuje, gdy przepływ krwi do części mózgu zostaje zakłócony, co prowadzi do nagłej utraty funkcji mózgu.

Related posts

Rewolucja w miejscu pracy: najlepsi eksperci omawiają pracę hybrydową i zdalną

Rewolucja w miejscu pracy: najlepsi eksperci omawiają pracę hybrydową i zdalną

W dzisiejszym szybko zmieniającym się krajobrazie biznesowym koncepcja pracy hybrydowej i zdalnej nabrała bezprecedensowego rozpędu. Ponieważ firmy wciąż dostosowują się do zmieniających się potrzeb i oczekiwań swoich pracowników, eksperci z różnych dziedzin zebrali się, aby omówić korzyści, wyzwania i przyszłość tego transformacyjnego sposobu pracy.

Powolna erozja: ujawnianie sposobów, w jakie ludzie marnują swoje kariery

Powolna erozja: ujawnianie sposobów, w jakie ludzie marnują swoje kariery

W dzisiejszym dynamicznym i konkurencyjnym świecie kariera odgrywa znaczącą rolę w rozwoju osobistym, stabilności finansowej i ogólnej satysfakcji z życia. Jednak wiele osób wpada w nieustający cykl stagnacji i niezadowolenia, stopniowo marnując swoje życie zawodowe.

Występ solowy rudowłosej dziewczyny

Na zlecenie Haydena Katie filmuje swoją masturbację.

Występ solowy rudowłosej dziewczyny

Było już po północy, kiedy Hayden odwiózł Katie do jej akademika po wspólnym wieczorze. Miała wcześnie rano zajęcia i nie miała kolejnej zmiany ubrania po tym, jak spędziła z nim noc wcześniej.

Zabójstwo Jordana Neely'ego i problem „patriotycznego” rasizmu

Czy Stany Zjednoczone mogą zrobić zasadniczy krok, by nie utożsamiać zachowania rasistowskiego z byciem dobrym Amerykaninem?

Zabójstwo Jordana Neely'ego i problem „patriotycznego” rasizmu

[Ostrzeżenie: ten esej zawiera zrzuty ekranowe ludzi wychwalających mordercę Jordana Neely'ego.] Funkcjonariusze organów ścigania w końcu - i być może niechętnie - oskarżyli Daniela Penny'ego, człowieka, który dusił Jordana Neely'ego aż do śmierci, o to zabójstwo.