Sobes.tech
Middle
249

JavaScript контекстінде боксинг деген не?

AI-дан жауап

sobes.tech AI

JavaScript-те "боксинг" (қораптау) — бұл примитивті мәнді (мысалы, жол, сан, логикалық мән) сәйкес кіріктірілген конструктордың (мысалы, String, Number, Boolean) уақытша обьект-қаптамасына автоматты түрде түрлендіру процесі.

Бұл, егер сіз оның қасиеттері немесе әдістеріне қол жеткізсеңіз, орын алады. JavaScript уақытша қаптама обьектісін құрады, олмен операция жүргізеді, содан кейін оны жояды.

Мысалдар:

// Жол примитиві
let s = "Hello";

// length әдісіне қол жеткізу: боксинг `String` обьектіне өтеді
console.log(s.length); // 5

// toUpperCase() әдісіне қол жеткізу: боксинг `String` обьектіне өтеді
console.log(s.toUpperCase()); // HELLO

// Сан примитиві
let n = 123;

// toString() әдісіне қол жеткізу: боксинг `Number` обьектіне өтеді
console.log(n.toString()); // "123"

// Логикалық примитив
let b = true;

// valueOf() әдісіне қол жеткізу: боксинг `Boolean` обьектіне өтеді
console.log(b.valueOf()); // true

Маңыздысы — примитивтерде қасиеттер немесе әдістер болмайды. Боксинг примитивтермен жұмыс істеуді ыңғайлы етеді, объектілік синтаксисін пайдаланып операцияларды орындауға мүмкіндік береді.

Боксинг жасырын түрде орындалады. Сіз объект-қаптаманы ашық түрде жасамайсыз (бірақ new String(), new Number(), new Boolean() көмегімен жасауға болады, бірақ ол ұсынылмайды).

Примитивтер мен қаптама объектілерінің айырмашылықтары:

Примитив Қаптама объектісі
Түрі Жол, Сан, Логикалық, Symbol, Null, Undefined, BigInt Сілтеме объектке
Өзгергіштік Өзгермейтін Өзгермелі
Салыстыру Мән бойынша салыстыру Сілтеме бойынша салыстыру
Жасау Литерал, typeof примитивті типті көрсетеді new, typeof 'объект' деп көрсетеді