Пример за JavaScript toString - Как да конвертирате число в низ в JS и други

Понякога искате да конвертирате един тип данни в друг тип данни, без да променяте стойностите ръчно.

Например, може да искате да конвертирате число в низ. JavaScript понякога прави това имплицитно.

Както когато използвате оператора double equals ( ==) или когато се опитвате да направите нещо върху стойност с тип данни, който е несъвместим с операцията. Това се нарича Тип принуда.

Това каза, можете също да конвертирате типове данни изрично. И аз ще ви покажа как да направите това в тази статия.

Низовият тип данни е много често срещан тип данни в JavaScript. За почти всеки друг тип данни трябва да имате представяне на низ.

Точно както трябва да сте виждали нещо подобно на това, "[object Object]"когато използвате обект вместо действителен низ.

В тази статия ще научим какъв е toStringметодът и как да конвертираме число (и няколко други типа данни) в низ с помощта на този метод.

В toStringметода

Както подсказва името, този метод се използва за промяна на данните в низ. Всеки от масивите, числата и булевите числа има този метод, който преобразува данните им по различни начини. Нека ги разгледаме поотделно сега.

Как да конвертирате число в низ

В toStringметода съществува на всеки брой буквално. Той преобразува числата в техните низови представяния. Ето как се използва:

const num = 54; console.log(num.toString()) // "54" 

Но има още нещо в това. В toStringметода за номера също приема baseаргумент. Този аргумент ви позволява да конвертирате число в друга база.

Върнатата стойност е низово представяне на новото число. Ето как се използва:

const num = 54; const num2 = num.toString(2); console.log(num2); // "110110" 

parseIntе друг метод на JavaScript, който за разлика от това преобразува низове в съответните им бройни представяния. Ето как работи:

const numInStr = "54"; const str = "Hello"; console.log(parseInt(numInStr)); // 54 console.log(parseInt(str)); // NaN 

За променлива, която не е подобна на число, се parseIntвръща, Nanкакто се вижда по-горе.

Как да конвертирате масив в низ в JavaScript

Масивите също имат toStringметода. Върнатата стойност на този метод е обединяване на всички стойности на масива (и дълбоко вложени масиви в него), разделени със запетаи. Ето как се използва:

const arr = ["javascript", "toString", [1, "deep1", [3, 4, "array"]]]; console.log(arr.toString()); // "javascript,toString,1,deep1,3,4,array" 

Как да конвертирате обект в низ в JavaScript

Връщаната стойност на toStringдаден обект е - точно както често сте попадали - "[object Object]". Например:

const obj = {name: 'Object'}; const obj2 = {type: 'data', number: 100}; console.log(obj.toString()); // [object Object] console.log(obj2.toString()); // [object Object] 

Преобразуването по подразбиране на обекти в низ е [object Object]. Забележете, че там има две object, а не само една? А другото е с главни букви?

Има повече представления за обекти като това, което следва:

function print() {}; const arr = []; const obj = {}; console.log( Object.prototype.toString.call(print), Object.prototype.toString.call(arr), Object.prototype.toString.call(obj) ) // [object Function] [object Array] [object Object] 

Функции, масиви, обекти и дори дати и регулярни изрази са обекти. И всеки от тях има toStringметода.

Когато toStringсе извика върху тях, той грабва какъвто и да е клас на обекта, стойността и след това го отпечатва, както виждате по-горе ("Функция, масив, обект).

Използваме, call(variable)защото toStringget получава обектния клас чрез thisсвойството.

Заключение

В .toStringметода връща низ преобразуване на данните, които се използват за. Това е много полезно за определени случаи, особено numbers.

В тази статия научихме как JavaScript toStringметодът работи с numbers, arrays и objects и също разгледахме малко parseInt.