🧾 Строгий режим в JavaScript (часть 6)
Удаление функции не допускается.
"use strict";
function x(p1, p2) {};
delete x; // Это вызовет ошибку
Дублирование имени параметра не допускается:
"use strict";
function x(p1, p1) {}; // Это вызовет ошибку
Восьмеричные числовые литералы не допускаются:
"use strict";
var x = 010; // Это вызовет ошибку
Восьмеричные escape-символы не допускаются:
"use strict";
var x = "\010"; // Это вызовет ошибку
📋 #JavaScript #Совет
▬▬▬▬▬▬▬▬
// How To WebDev
Удаление функции не допускается.
"use strict";
function x(p1, p2) {};
delete x; // Это вызовет ошибку
Дублирование имени параметра не допускается:
"use strict";
function x(p1, p1) {}; // Это вызовет ошибку
Восьмеричные числовые литералы не допускаются:
"use strict";
var x = 010; // Это вызовет ошибку
Восьмеричные escape-символы не допускаются:
"use strict";
var x = "\010"; // Это вызовет ошибку
📋 #JavaScript #Совет
▬▬▬▬▬▬▬▬
// How To WebDev
🧾 Строгий режим в JavaScript (часть 7)
Запись в свойство read-only не допускается:
"use strict";
var obj = {};
Object.defineProperty(obj, "x", {value:0, writable:false});
obj.x = 3.14; // Это вызовет ошибку
Запись в свойство get-only не допускается:
"use strict";
var obj = {get x() {return 0} };
obj.x = 3.14; // Это вызовет ошибку
Удаление свойства, которое невозможно удалить, не допускается:
"use strict";
delete Object.prototype; // Это вызовет ошибку
Слово eval нельзя использовать в качестве переменной:
"use strict";
var eval = 3.14; // Это вызовет ошибку
📋 #JavaScript #Совет
▬▬▬▬▬▬▬▬
// How To WebDev
Запись в свойство read-only не допускается:
"use strict";
var obj = {};
Object.defineProperty(obj, "x", {value:0, writable:false});
obj.x = 3.14; // Это вызовет ошибку
Запись в свойство get-only не допускается:
"use strict";
var obj = {get x() {return 0} };
obj.x = 3.14; // Это вызовет ошибку
Удаление свойства, которое невозможно удалить, не допускается:
"use strict";
delete Object.prototype; // Это вызовет ошибку
Слово eval нельзя использовать в качестве переменной:
"use strict";
var eval = 3.14; // Это вызовет ошибку
📋 #JavaScript #Совет
▬▬▬▬▬▬▬▬
// How To WebDev
🧾 Строгий режим в JavaScript (часть 8)
Слово arguments нельзя использовать в качестве переменной:
"use strict";
var arguments = 3.14; // Это вызовет ошибку
Заявление with не допускается:
"use strict";
with (Math){x = cos(2)}; // Это вызовет ошибку
По соображениям безопасности eval() запрещенно создавать переменные в области, из которой он был вызван:
"use strict";
eval ("var x = 2");
alert (x);// Это вызовет ошибку
📋 #JavaScript #Совет
▬▬▬▬▬▬▬▬
// How To WebDev
Слово arguments нельзя использовать в качестве переменной:
"use strict";
var arguments = 3.14; // Это вызовет ошибку
Заявление with не допускается:
"use strict";
with (Math){x = cos(2)}; // Это вызовет ошибку
По соображениям безопасности eval() запрещенно создавать переменные в области, из которой он был вызван:
"use strict";
eval ("var x = 2");
alert (x);// Это вызовет ошибку
📋 #JavaScript #Совет
▬▬▬▬▬▬▬▬
// How To WebDev
🧾 Строгий режим в JavaScript (часть 9)
Ключевое слово this в функции ведет себя по-разному в строгом режиме.
Ключевое слово this относится к объекту, который вызвал функцию.
Если объект не указан, функции в строгом режиме вернут undefined, а функции в нормальном режиме вернут глобальный объект (окно):
"use strict";
function myFunction() {
alert(this); // выдаст предупреждение "undefined"
}
myFunction();
📋 #JavaScript #Совет
▬▬▬▬▬▬▬▬
// How To WebDev
Ключевое слово this в функции ведет себя по-разному в строгом режиме.
Ключевое слово this относится к объекту, который вызвал функцию.
Если объект не указан, функции в строгом режиме вернут undefined, а функции в нормальном режиме вернут глобальный объект (окно):
"use strict";
function myFunction() {
alert(this); // выдаст предупреждение "undefined"
}
myFunction();
📋 #JavaScript #Совет
▬▬▬▬▬▬▬▬
// How To WebDev
🧾 Строгий режим в JavaScript (финал)
Ключевые слова, зарезервированные для будущих версий JavaScript, не могут использоваться в качестве имен переменных в строгом режиме.
Такие как эти:
• implements
• interface
• let
• package
• private
• protected
• public
• static
• yield
Пример:
"use strict";
var public = 1500; // Это вызовет ошибку
Директива "use strict" распознается только в начале скрипта или функции.
📋 #JavaScript #Совет
▬▬▬▬▬▬▬▬
// How To WebDev
Ключевые слова, зарезервированные для будущих версий JavaScript, не могут использоваться в качестве имен переменных в строгом режиме.
Такие как эти:
• implements
• interface
• let
• package
• private
• protected
• public
• static
• yield
Пример:
"use strict";
var public = 1500; // Это вызовет ошибку
Директива "use strict" распознается только в начале скрипта или функции.
📋 #JavaScript #Совет
▬▬▬▬▬▬▬▬
// How To WebDev
🧾 Лямбда в Python (часть 1)
Функция lambda — это небольшая анонимная функция.
Функция lambda может принимать любое количество аргументов, но может иметь только одно выражение.
Синтаксис
lambda аргумент : выражение
Выражение выполняется и возвращается результат.
Пример – добавьте 10 к аргументу , и верните результат:
x = lambda a : a + 10
print(x(5))
Пример – умножьте аргумент a на аргумент b и верните результат:
x = lambda a, b : a * b
print(x(5, 6))
Пример – суммируйте аргументы a, b, и c и верните результат:
x = lambda a, b, c : a + b + c
print(x(5, 6, 2))
📋 #Backend #Python #Совет
▬▬▬▬▬▬▬▬
// How To WebDev
Функция lambda — это небольшая анонимная функция.
Функция lambda может принимать любое количество аргументов, но может иметь только одно выражение.
Синтаксис
lambda аргумент : выражение
Выражение выполняется и возвращается результат.
Пример – добавьте 10 к аргументу , и верните результат:
x = lambda a : a + 10
print(x(5))
Пример – умножьте аргумент a на аргумент b и верните результат:
x = lambda a, b : a * b
print(x(5, 6))
Пример – суммируйте аргументы a, b, и c и верните результат:
x = lambda a, b, c : a + b + c
print(x(5, 6, 2))
📋 #Backend #Python #Совет
▬▬▬▬▬▬▬▬
// How To WebDev
🧾 Лямбда в Python (часть 2)
Зачем использовать лямбда-функции?
Сила лямбда лучше проявляется, когда вы используете их как анонимную функцию внутри другой функции
Скажем, у вас есть определение функции, которое принимает один аргумент, и этот аргумент будет умножен на неизвестное число:
def myfunc(n):
return lambda a : a * n
Используйте это определение функции, чтобы создать функцию, которая всегда удваивает отправляемое вами число:
def myfunc(n):
return lambda a : a * n
mydoubler = myfunc(2)
print(mydoubler(11))
📋 #Backend #Python #Совет
▬▬▬▬▬▬▬▬
// How To WebDev
Зачем использовать лямбда-функции?
Сила лямбда лучше проявляется, когда вы используете их как анонимную функцию внутри другой функции
Скажем, у вас есть определение функции, которое принимает один аргумент, и этот аргумент будет умножен на неизвестное число:
def myfunc(n):
return lambda a : a * n
Используйте это определение функции, чтобы создать функцию, которая всегда удваивает отправляемое вами число:
def myfunc(n):
return lambda a : a * n
mydoubler = myfunc(2)
print(mydoubler(11))
📋 #Backend #Python #Совет
▬▬▬▬▬▬▬▬
// How To WebDev
🧾 Массивы в Python (часть 1)
Python не имеет встроенной поддержки массивов, но вместо этого можно использовать Python списки.
Массивы
Массивы используются для хранения нескольких значений в одной переменной:
Пример – создайте массив, содержащий названия автомобилей:
cars = ["Ford", "Volvo", "BMW"]
Что такое массив?
Массив — это специальная переменная, которая может содержать более одного значения одновременно.
Если у вас есть список элементов (например, список названий автомобилей), хранение автомобилей в отдельных переменных может выглядеть так:
car1 = "Ford"
car2 = "Volvo"
car3 = "BMW"
Однако, если вы хотите перебрать все машины и найти конкретную? А если бы у вас было не 3 машины, а 300?
Решение представляет собой массив.
Массив может содержать множество значений под одним именем, и вы можете получить доступ к значениям, обратившись к порядковому номеру.
📋 #Backend #Python #Совет
▬▬▬▬▬▬▬▬
// How To WebDev
Python не имеет встроенной поддержки массивов, но вместо этого можно использовать Python списки.
Массивы
Массивы используются для хранения нескольких значений в одной переменной:
Пример – создайте массив, содержащий названия автомобилей:
cars = ["Ford", "Volvo", "BMW"]
Что такое массив?
Массив — это специальная переменная, которая может содержать более одного значения одновременно.
Если у вас есть список элементов (например, список названий автомобилей), хранение автомобилей в отдельных переменных может выглядеть так:
car1 = "Ford"
car2 = "Volvo"
car3 = "BMW"
Однако, если вы хотите перебрать все машины и найти конкретную? А если бы у вас было не 3 машины, а 300?
Решение представляет собой массив.
Массив может содержать множество значений под одним именем, и вы можете получить доступ к значениям, обратившись к порядковому номеру.
📋 #Backend #Python #Совет
▬▬▬▬▬▬▬▬
// How To WebDev
🧾 Массивы в Python (часть 2)
Доступ к элементам массива
Вы обращаетесь к элементу массива, обращаясь к номеру индекса.
Пример – получить значение первого элемента массива:
x = cars[0]
Пример – измените значение первого элемента массива:
cars[0] = "Toyota"
📋 #Backend #Python #Совет
▬▬▬▬▬▬▬▬
// How To WebDev
Доступ к элементам массива
Вы обращаетесь к элементу массива, обращаясь к номеру индекса.
Пример – получить значение первого элемента массива:
x = cars[0]
Пример – измените значение первого элемента массива:
cars[0] = "Toyota"
📋 #Backend #Python #Совет
▬▬▬▬▬▬▬▬
// How To WebDev
🧾 Массивы в Python (часть 3)
Длина массива
Используйте метод len(), чтобы вернуть длину массива (количество элементов в массиве).
Пример – вернуть количество элементов в массиве cars:
x = len(cars)
Длина массива всегда на единицу больше, чем самый высокий индекс массива.
📋 #Backend #Python #Совет
▬▬▬▬▬▬▬▬
// How To WebDev
Длина массива
Используйте метод len(), чтобы вернуть длину массива (количество элементов в массиве).
Пример – вернуть количество элементов в массиве cars:
x = len(cars)
Длина массива всегда на единицу больше, чем самый высокий индекс массива.
📋 #Backend #Python #Совет
▬▬▬▬▬▬▬▬
// How To WebDev
🧾 Массивы в Python (часть 4)
Цикл элементов массива
Вы можете использовать цикл for in для перебора всех элементов массива.
Пример – выведите каждый элемент массива cars:
for x in cars:
print(x)
Добавление элементов массива
Вы можете использовать метод append() для добавления элемента в массив.
Пример – добавьте еще один элемент в массив cars:
cars.append("Honda")
📋 #Backend #Python #Совет
▬▬▬▬▬▬▬▬
// How To WebDev
Цикл элементов массива
Вы можете использовать цикл for in для перебора всех элементов массива.
Пример – выведите каждый элемент массива cars:
for x in cars:
print(x)
Добавление элементов массива
Вы можете использовать метод append() для добавления элемента в массив.
Пример – добавьте еще один элемент в массив cars:
cars.append("Honda")
📋 #Backend #Python #Совет
▬▬▬▬▬▬▬▬
// How To WebDev
🧾 Массивы в Python (часть 5)
Удаление элементов массива
Вы можете использовать метод pop() для удаления элемента из массива.
Пример – удалите второй элемент массива cars:
cars.pop(1)
Вы также можете использовать метод remove() для удаления элемента из массива.
Пример – удалите элемент, который имеет значение «Volvo»:
cars.remove("Volvo")
Метод remove() удаляет только первое вхождение указанного значения.
📋 #Backend #Python #Совет
▬▬▬▬▬▬▬▬
// How To WebDev
Удаление элементов массива
Вы можете использовать метод pop() для удаления элемента из массива.
Пример – удалите второй элемент массива cars:
cars.pop(1)
Вы также можете использовать метод remove() для удаления элемента из массива.
Пример – удалите элемент, который имеет значение «Volvo»:
cars.remove("Volvo")
Метод remove() удаляет только первое вхождение указанного значения.
📋 #Backend #Python #Совет
▬▬▬▬▬▬▬▬
// How To WebDev
🧾 Массивы в Python (часть 6)
Методы массива
В Python есть набор встроенных методов, которые вы можете использовать для списков/массивов.
append() – добавляет элемент в конец списка.
clear() – удаляет все элементы из списка.
copy() – возвращает копию списка.
count() – возвращает количество элементов с указанным значением.
extend() – добавляет элементы списка (или любого итерируемого) в конец текущего списка.
📋 #Backend #Python #Совет
▬▬▬▬▬▬▬▬
// How To WebDev
Методы массива
В Python есть набор встроенных методов, которые вы можете использовать для списков/массивов.
append() – добавляет элемент в конец списка.
clear() – удаляет все элементы из списка.
copy() – возвращает копию списка.
count() – возвращает количество элементов с указанным значением.
extend() – добавляет элементы списка (или любого итерируемого) в конец текущего списка.
📋 #Backend #Python #Совет
▬▬▬▬▬▬▬▬
// How To WebDev
🧾 Массивы в Python (финал)
index() – возвращает индекс первого элемента с указанным значением.
insert() – добавляет элемент в указанную позицию.
pop() – удаляет элемент в указанной позиции.
remove() – удаляет первый элемент с указанным значением.
reverse() – меняет порядок списка на обратный.
sort() – сортирует список.
📋 #Backend #Python #Совет
▬▬▬▬▬▬▬▬
// How To WebDev
index() – возвращает индекс первого элемента с указанным значением.
insert() – добавляет элемент в указанную позицию.
pop() – удаляет элемент в указанной позиции.
remove() – удаляет первый элемент с указанным значением.
reverse() – меняет порядок списка на обратный.
sort() – сортирует список.
📋 #Backend #Python #Совет
▬▬▬▬▬▬▬▬
// How To WebDev
🧾 Булевые значения в Python (часть 1)
Булевые значения представляют одно из двух значений: True или False.
В программировании вам часто нужно знать, является ли выражение True или False.
Вы можете оценить любое выражение в Python и получить один из двух ответов, True или False.
Когда вы сравниваете два значения, выражение оценивается, и Python возвращает логический ответ.
Пример:
Код
Когда вы запускаете условие "if", Python возвращает: True или False.
Пример – распечатайте сообщение на основе того, является ли условие True или False:
a = 200
b = 33
if b > a:
print("b больше чем a")
else:
print("b меньше чем а a")
📋 #Backend #Python #Совет
▬▬▬▬▬▬▬▬
// How To WebDev
Булевые значения представляют одно из двух значений: True или False.
В программировании вам часто нужно знать, является ли выражение True или False.
Вы можете оценить любое выражение в Python и получить один из двух ответов, True или False.
Когда вы сравниваете два значения, выражение оценивается, и Python возвращает логический ответ.
Пример:
Код
Когда вы запускаете условие "if", Python возвращает: True или False.
Пример – распечатайте сообщение на основе того, является ли условие True или False:
a = 200
b = 33
if b > a:
print("b больше чем a")
else:
print("b меньше чем а a")
📋 #Backend #Python #Совет
▬▬▬▬▬▬▬▬
// How To WebDev
🧾 Булевые значения в Python (часть 2)
Оценка значений и переменных
Функция bool() позволяет оценить любое значение и вернуть: True или False.
Пример – оцените строку и номер:
print(bool("Привет"))
print(bool(15))
Пример – оцените две переменные:
x = "Привет"
y = 15
print(bool(x))
print(bool(y))
📋 #Backend #Python #Совет
▬▬▬▬▬▬▬▬
// How To WebDev
Оценка значений и переменных
Функция bool() позволяет оценить любое значение и вернуть: True или False.
Пример – оцените строку и номер:
print(bool("Привет"))
print(bool(15))
Пример – оцените две переменные:
x = "Привет"
y = 15
print(bool(x))
print(bool(y))
📋 #Backend #Python #Совет
▬▬▬▬▬▬▬▬
// How To WebDev
🧾 Булевые значения в Python (часть 3)
Большинство значений верны
Почти любое значение является True, если у него есть какое-то содержание.
Любая строка – это True, кроме пустых строк.
Любое число – это True, кроме 0.
Любой список, кортеж, набор и словарь: это True, кроме пустых.
Пример – следующие выржания вернут True:
bool("abc")
bool(123)
bool(["apple", "cherry", "banana"])
📋 #Backend #Python #Совет
▬▬▬▬▬▬▬▬
// How To WebDev
Большинство значений верны
Почти любое значение является True, если у него есть какое-то содержание.
Любая строка – это True, кроме пустых строк.
Любое число – это True, кроме 0.
Любой список, кортеж, набор и словарь: это True, кроме пустых.
Пример – следующие выржания вернут True:
bool("abc")
bool(123)
bool(["apple", "cherry", "banana"])
📋 #Backend #Python #Совет
▬▬▬▬▬▬▬▬
// How To WebDev
🧾 Булевые значения в Python (часть 4)
Некоторые значения ложные
На самом деле, существует не так много значений, которые являются False, кроме пустых значений, таких как (), [], {}, "", число 0, и значение None. И, конечно же, значение False оценивается как False.
Пример – следующие выражения вернут False:
bool(False)
bool(None)
bool(0)
bool("")
bool(())
bool([])
bool({})
📋 #Backend #Python #Совет
▬▬▬▬▬▬▬▬
// How To WebDev
Некоторые значения ложные
На самом деле, существует не так много значений, которые являются False, кроме пустых значений, таких как (), [], {}, "", число 0, и значение None. И, конечно же, значение False оценивается как False.
Пример – следующие выражения вернут False:
bool(False)
bool(None)
bool(0)
bool("")
bool(())
bool([])
bool({})
📋 #Backend #Python #Совет
▬▬▬▬▬▬▬▬
// How To WebDev
🧾 Булевые значения в Python (часть 5)
Еще одно значение или объект в этом случае оценивается как False, то есть, если объект, состоит из класса с функцией len, функция вернет 0 или False:
Пример:
class myclass():
def len(self):
return 0
myobj = myclass()
print(bool(myobj))
📋 #Backend #Python #Совет
▬▬▬▬▬▬▬▬
// How To WebDev
Еще одно значение или объект в этом случае оценивается как False, то есть, если объект, состоит из класса с функцией len, функция вернет 0 или False:
Пример:
class myclass():
def len(self):
return 0
myobj = myclass()
print(bool(myobj))
📋 #Backend #Python #Совет
▬▬▬▬▬▬▬▬
// How To WebDev
🧾 Булевые значения в Python (часть 6)
Функции могут возвращать булевые значения
Вы можете создавать функции, которые возвращает логическое значение:
Пример – выведите ответ функции:
def myFunction() :
return True
print(myFunction())
Вы можете выполнить код на основе логического ответа на функцию:
Пример – печатать "Да!", если функция возвращает True, иначе печатать "Нет!":
def myFunction() :
return True
if myFunction():
print("Да!")
else:
print("Нет!")
📋 #Backend #Python #Совет
▬▬▬▬▬▬▬▬
// How To WebDev
Функции могут возвращать булевые значения
Вы можете создавать функции, которые возвращает логическое значение:
Пример – выведите ответ функции:
def myFunction() :
return True
print(myFunction())
Вы можете выполнить код на основе логического ответа на функцию:
Пример – печатать "Да!", если функция возвращает True, иначе печатать "Нет!":
def myFunction() :
return True
if myFunction():
print("Да!")
else:
print("Нет!")
📋 #Backend #Python #Совет
▬▬▬▬▬▬▬▬
// How To WebDev
🧾 Булевые значения в Python (финал)
Python также имеет много встроенных функций, которые возвращают логическое значение, как функция isinstance(), которая может использоваться для определения того, что объект имеет определенный тип данных.
Пример – проверьте, является ли объект целым числом или нет:
x = 200
print(isinstance(x, int))
📋 #Backend #Python #Совет
▬▬▬▬▬▬▬▬
// How To WebDev
Python также имеет много встроенных функций, которые возвращают логическое значение, как функция isinstance(), которая может использоваться для определения того, что объект имеет определенный тип данных.
Пример – проверьте, является ли объект целым числом или нет:
x = 200
print(isinstance(x, int))
📋 #Backend #Python #Совет
▬▬▬▬▬▬▬▬
// How To WebDev