Главная страница » JavaScript » 40. Стандартная библиотека
JavaScript поставляется с богатой стандартной библиотекой, которая предоставляет множество полезных функций и объектов для работы с различными типами данных и выполнения общих задач. В этом уроке мы рассмотрим некоторые ключевые части стандартной библиотеки JavaScript.
Math
Объекты являются основной структурой данных в JavaScript. Стандартная библиотека предоставляет множество методов для работы с объектами.
Создание объекта
let person = {
name: "John",
age: 30
};
Методы объекта
Object.keys(obj)
: Возвращает массив ключей объекта.
console.log(Object.keys(person)); // ["name", "age"]
Object.values(obj)
: Возвращает массив значений объекта.
console.log(Object.values(person)); // ["John", 30]
Object.entries(obj)
: Возвращает массив пар [ключ, значение].
console.log(Object.entries(person)); // [["name", "John"], ["age", 30]]
Массивы являются важной частью JavaScript, и стандартная библиотека предоставляет множество методов для их обработки.
Создание массива
let numbers = [1, 2, 3, 4, 5];
Методы массива
Array.prototype.push()
: Добавляет элемент в конец массива.
numbers.push(6);
console.log(numbers); // [1, 2, 3, 4, 5, 6]
Array.prototype.pop()
: Удаляет последний элемент массива.
numbers.pop();
console.log(numbers); // [1, 2, 3, 4, 5]
Array.prototype.map()
: Создает новый массив, применяя функцию к каждому элементу исходного массива.
let squared = numbers.map(x => x * x);
console.log(squared); // [1, 4, 9, 16, 25]
Array.prototype.filter()
: Создает новый массив, включающий только элементы, которые прошли проверку функции.
let even = numbers.filter(x => x % 2 === 0);
console.log(even); // [2, 4]
Строки в JavaScript являются примитивными значениями, но стандартная библиотека предоставляет множество методов для их обработки.
Создание строки
let str = "Hello, World!";
Методы строки
String.prototype.length
: Возвращает длину строки.
console.log(str.length); // 13
String.prototype.toUpperCase()
: Преобразует строку в верхний регистр.
console.log(str.toUpperCase()); // "HELLO, WORLD!"
String.prototype.toLowerCase()
: Преобразует строку в нижний регистр.
console.log(str.toLowerCase()); // "hello, world!"
String.prototype.includes()
: Проверяет, содержит ли строка другую строку.
console.log(str.includes("World")); // true
String.prototype.split()
: Разбивает строку на массив подстрок.
let words = str.split(" ");
console.log(words); // ["Hello,", "World!"]
JavaScript предоставляет объект Math
и методы для работы с числами.
Объект Math
Math.max()
: Возвращает наибольшее из переданных чисел.
console.log(Math.max(1, 2, 3)); // 3
Math.min()
: Возвращает наименьшее из переданных чисел.
console.log(Math.min(1, 2, 3)); // 1
Math.random()
: Возвращает случайное число от 0 до 1.
console.log(Math.random()); // случайное число от 0 до 1
Math.round()
: Округляет число до ближайшего целого.
console.log(Math.round(4.6)); // 5
JavaScript предоставляет объект Date
для работы с датами и временем.
Создание даты
let now = new Date();
console.log(now); // текущая дата и время
Методы объекта Date
Date.prototype.getFullYear()
: Возвращает год.
console.log(now.getFullYear()); // текущий год
Date.prototype.getMonth()
: Возвращает месяц (от 0 до 11).
console.log(now.getMonth()); // текущий месяц
Date.prototype.getDate()
: Возвращает день месяца (от 1 до 31).
console.log(now.getDate()); // текущий день месяца
JSON (JavaScript Object Notation) — это формат обмена данными. JavaScript предоставляет методы для работы с JSON.
Преобразование объекта в JSON
let person = {
name: "John",
age: 30
};
let json = JSON.stringify(person);
console.log(json); // {"name":"John","age":30}
let parsed = JSON.parse(json);
console.log(parsed); // {name: "John", age: 30}
Использование глобальных переменных
Глобальные переменные могут изменяться в любой части программы, что приводит к недетерминированности
let globalValue = 10;
function addGlobalValue(a) {
return a + globalValue;
}
Функции с побочными эффектами
Изменение состояния вне функции делает её поведение непредсказуемым.
let counter = 0;
function increment() {
counter += 1;
return counter;
}
Зависимость от внешних ресурсов
Внешние ресурсы, такие как системное время, делают функцию недетерминированной.
function getCurrentDate() {
return new Date();
}
Необработка входных данных
Необработка или некорректная обработка входных данных может привести к непредсказуемым результатам.
function add(a, b) {
return a + b;
}
console.log(add(2, "3")); // "23", а не 5, как ожидалось
Детерминированные функции делают ваш код более предсказуемым, тестируемым и надежным. Избегание побочных эффектов, глобальных переменных и зависимости от внешних ресурсов способствует созданию детерминированных функций.
Напишите детерминированную функцию square
, которая принимает одно число и возвращает его квадрат.
Напишите недетерминированную функцию getRandomItem
, которая принимает массив и возвращает случайный элемент из этого массива.
Пример решения:
// Задание 1
function square(num) {
return num * num;
}
console.log(square(4)); // 16
console.log(square(5)); // 25
// Задание 2
function getRandomItem(arr) {
const randomIndex = Math.floor(Math.random() * arr.length);
return arr[randomIndex];
}
console.log(getRandomItem([1, 2, 3, 4, 5])); // Случайный элемент массива
Этот урок поможет вам лучше понять важность детерминированности функций и научит создавать функции, которые ведут себя предсказуемо и надежно.
Наша цель и главная задача сделать качественное образование в вашем браузере
Телефон: +375 33 910-08-92
Email: info@codefor.tech
Адрес: г. Барановичи, ул. Пирогова, д. 7
© 2024 Все права защищены. CodeFor.