Приклад 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їх викликають, він захоплює будь-який клас Object, яким є значення, а потім друкує його, як ви бачите вище ("Функція, масив, об'єкт).

Ми використовуємо, call(variable)тому що toStringотримує клас об’єктів через thisвластивість.

Висновок

.toStringМетод повертає строкове перетворення даних , він використовується на. Це дуже корисно для певних випадків, особливо numbers.

У цій статті ми дізналися, як toStringметод JavaScript працює з numbers, arrays та objects, а також трохи розглянули parseInt.