Web МастерскаяБлог
Сообщество Web Мастеров. Тут собрано всё, чтобы написать свой первый сайт, запустить его в Интернет и поддерживать его в течении всей его работы.
Как организовать код в JavaScript
Организация кода в JavaScript важна для поддержания чистоты, ясности и удобства дальнейшей поддержки и развития проекта. Рассмотрим несколько базовых принципов и методик, которые помогут структурировать ваш код эффективно.
Одним из самых важных принципов является деление кода на модули. Каждый модуль должен отвечать за отдельную задачу и предоставлять четко определенное API.
Пример ES-модулей:
Для избежания конфликтов имен в глобальном пространстве можно использовать namespaces:
...
Модульность
Одним из самых важных принципов является деление кода на модули. Каждый модуль должен отвечать за отдельную задачу и предоставлять четко определенное API.
- CommonJS (require/exports): традиционный подход, используемый в Node.js.
- ES Modules (import/export): современная спецификация, поддерживаемая большинством современных браузеров и Node.js.
Пример ES-модулей:
// utils.js
export function add(a, b) {
return a + b;
}
// main.js
import { add } from './utils.js';
console.log(add(2, 3)); // 5Namespace (Пространства имен)
Для избежания конфликтов имен в глобальном пространстве можно использовать namespaces:
var myApp = {};
myApp.utils = {
add: function(a, b) {
return a + b;
}
};
console.log(myApp.utils.add(2, 3));- Жалоба
Перевод rows в пиксели на JS и jQuery
Представим, что есть такой
И необходимо при помощи чистого JavaScript или jQuery получить значение
Для того чтобы получить значение атрибута rows и конвертировать его в пиксели на jQuery, нужно выполнить несколько шагов:
Пример кода:
...
textarea:
<textarea name="val[text]" rows="12" cols="50" id="text"></textarea>И необходимо при помощи чистого JavaScript или jQuery получить значение
rows="12" и перевести его в пиксели. Как это сделать в этой статье.Для того чтобы получить значение атрибута rows и конвертировать его в пиксели на jQuery, нужно выполнить несколько шагов:
- Получить значение атрибута
rowsс помощью jQuery. - Преобразовать это значение в пиксели, умножив на среднюю высоту строки.
Пример кода:
<!DOCTYPE html>
<html lang="ru">
<head>
<meta charset="UTF-8">
<title>Пример преобразования rows в пиксели</title>
<script src="https://code.jquery.com/jquery-3.6.0.min.js"></script>
</head>
<body>
<textarea name="val[text]" rows="12" cols="50" id="text"></textarea>
<script>
// Получаем значение атрибута rows
var rowsCount = parseInt($('#text').attr('rows'));
// Средняя высота строки обычно принимается равной 20 пикселям
Как в JS / jQuery сделать неизменную переменную?
В стандартной JavaScript и jQuery нет понятия «константной» переменной, как в языках программирования, таких как Java или C++. Однако есть несколько способов, которые помогут достичь аналогичного эффекта:
Синтаксис ES6 (ECMAScript 2015) ввёл ключевое слово
Если нужно объявить постоянную переменную в локальном контексте, можно использовать немедленно вызываемую анонимную функцию:
...
Способ 1: Использовать ключевое слово const
Синтаксис ES6 (ECMAScript 2015) ввёл ключевое слово
const, которое позволяет объявлять переменные, которые не могут быть повторно определены:
const MY_CONSTANT = 'This is a constant';
console.log(MY_CONSTANT); // This is a constant
MY_CONSTANT = 'New Value'; // Будет ошибка: Assignment to constant variable.Способ 2: Использовать IIFE (Immediately Invoked Function Expression)
Если нужно объявить постоянную переменную в локальном контексте, можно использовать немедленно вызываемую анонимную функцию:
(function () {
var CONSTANT_VALUE = 'Some Constant Value';
console.log(CONSTANT_VALUE); // Some Constant Value
})();
// Попытка доступа извне невозможна:
console.log(CONSTANT_VALUE); // ReferenceError: CONSTANT_VALUEPHP: Ошибка "Creation of dynamic property"
Начиная с версии PHP 8.2, появилась новая ошибка "Creation of dynamic property", которая предупреждает разработчиков о недопустимом создании динамических свойств в классах. Эта ошибка сигнализирует о переходе PHP к более строгим стандартам объектно-ориентированного программирования и подготовке к отказу от старых практик.
Ошибка "Creation of dynamic property" возникает, когда программа пытается создать новое свойство класса во время выполнения, не объявляя его предварительно в определении класса. Ранее такое поведение разрешалось, но начиная с PHP 8.2, оно объявлено устаревшим и в будущем будет полностью запрещено.
Пример кода, вызывающего ошибку:
Ранее PHP позволял динамически создавать свойства, что приводило к следующим проблемам:
Что такое ошибка "Creation of dynamic property"?
Ошибка "Creation of dynamic property" возникает, когда программа пытается создать новое свойство класса во время выполнения, не объявляя его предварительно в определении класса. Ранее такое поведение разрешалось, но начиная с PHP 8.2, оно объявлено устаревшим и в будущем будет полностью запрещено.
Пример кода, вызывающего ошибку:
class ExampleClass {}
$obj = new ExampleClass();
$obj->newProperty = 'value'; // Создание динамического свойстваПочему это считается проблемой?
Ранее PHP позволял динамически создавать свойства, что приводило к следующим проблемам:
- Низкая читаемость кода: Невозможно было сразу
MySQLi: Использование функции bind_param()
При разработке веб-приложений на PHP одна из важнейших задач — защита от SQL-инъекций, позволяющих злоумышленникам внедрить вредоносный код в запросы к базе данных. Одним из эффективных решений этой проблемы являются подготовленные выражения (prepared statements) в комбинации с функцией
Эта статья объясняет, как правильно использовать функцию
Функция
Принцип работы:
Шаг 1: Под...
bind_param(), доступной в библиотеке MySQLi.Эта статья объясняет, как правильно использовать функцию
bind_param() для безопасной передачи данных в SQL-запросы, избавляясь от риска SQL-инъекций и улучшая производительность приложений.Что такое bind_param()?
Функция
bind_param() — это встроенный метод библиотеки MySQLi, предназначенный для связывания переменных с плейсхолдерами в подготовленных выражениях. Она позволяет надёжно передавать данные в SQL-запросы, предотвращая возможность внесения опасных команд злоумышленниками.Принцип работы:
- Создать подготовленный запрос с плейсхолдерами (
?). - Привязать переменные к плейсхолдерам с указанием их типов.
- Выполнить запрос.
Как использовать bind_param()?
Шаг 1: Под...
Категории
- Apache 6
- CMS 3
- CSS 19
- FTP 1
- HTML 12
- JavaScript 44
- MySQL 17
- Nginx 16
- PHP 54
- phpMyAdmin 2
- SEO 4
- SVG 6
- URL 1
- XML 3
- Безопасность 7
- Библиотека JS 16
- Графика 3
- Доменное имя 1
- Инструкция 1
- Кодировка 2
- Контент 8
- Мнение 3
- Монетизация сайта 2
- Настройка 3
- Ошибка 12
- Поисковая система 2
- Продвижение сайта 6
- Производительность 1
- Прочее 1
- Софт 1
- Старт 2
- Сценарий 1
- Функция 1
- Хостинг | Сервер 3
Реклама
















