Сделайте обобщенную функцию сортировки массива
var persons = [
{name: "Иван", age: 17},
{name: "Мария", age: 35},
{name: "Алексей", age: 73},
{name: "Яков", age: 12},
]
sort(persons, "age"); //сортирует по возрасту по возрастанию
sort(persons, "name", false); //сортирует по имени по убыванию
Функция позволяет отсортировать любой набор данных по имени поля (второй параметр). Третьим параметром идет необязательный Boolean
, который в случае true
делает сортировку по возрастанию, в случае false
- по убыванию. По умолчанию (без третьего параметра)
происходит сортировка по возрастанию.
Используя Array.map
приведите все строки в массиве к числу. Элементы других типов оставьте как есть:
["1", {}, null, undefined, "500", 700]
должно превратиться в
[1, {}, null, undefined, 500, 700]
Получите произведение всех чисел в массиве, используя Array.reduce
. Не обрабатывайте типы данных, не являющиеся числом.
["0", 5, 3, "string", null]
результат должен быть 15
Напишите свою реализацию Array.filter
для объектов:
var phone = {
brand: "meizu",
model: "m2",
ram: 2,
color: "black",
};
filter(phone,function(key,value){
return (key == "color" || value == 2);
});
должно вернуть
{
ram: 2,
color: "black",
}
Для удаления пары ключ-значение используйте delete
.
Напишите свою реализацию Array.map
для объектов:
map({name: "Иван", age: 17},function(key,value){
var result = {};
result[key+"_"] = value + "$";
return result;
}) //должен вернуть {name_: "Иван$", age_: "17$"}
Сделать калькулятор на jQuery, который позволяет складывать, вычитать, умножать и делить числа. Операции должны быть отдельными кнопками, так же должно быть три поля ввода - для двух операндов и для результата.
Сделайте поле ввода (input type=text
) и кнопку upperCase
, при нажатии на которую все буквы в поле ввода превратятся в большие
Сделайте поле ввода, которое сразу при вводе превращает все буквы в большие. Используйте события keydown
, keyup
, keypress
, change
или другие.
Сделайте поле ввода пароля с возможностью показать пароль используя поле типа checkbox
. Наподобие полей ввода пароля WiFi.
Сделайте калькулятор, только вместо набора кнопок для сложения, вычитания, умножения и деления используйте input type='radio'
Напишите код, который по нажатию кнопки <button id='addPhone'>+</button>
добавляет поле ввода телефона. Количество таких полей ввода неограничено, все они
должны находится в одном элементе <div>
.
Перенесите код предыдущих заданий в $(document).ready
, измените место подключения JS кода в HTML (в <head>
).
Расширьте ManyPhones возможностью удалять любое поле ввода телефона с помощью <button class='delPhone'>x</button>
. Такая кнопка должна быть
возле каждого поля ввода.