Сегодня задачка у нас: Палиндром
Палиндром — слово, предложение или последовательность символов, которая абсолютно одинаково читается как в привычном направлении, так и в обратном. К примеру, “Anna” — это палиндром, а “table” и “John” — нет.
Постановка
Дана строка; нужно написать функцию, которая позволяет вернуть значение true, если строка является палиндромом, и false — если нет. При этом нужно учитывать пробелы и знаки препинания.
palindrome('racecar') === true
palindrome('table') === false
P.s Решение будет позже)
Палиндром — слово, предложение или последовательность символов, которая абсолютно одинаково читается как в привычном направлении, так и в обратном. К примеру, “Anna” — это палиндром, а “table” и “John” — нет.
Постановка
Дана строка; нужно написать функцию, которая позволяет вернуть значение true, если строка является палиндромом, и false — если нет. При этом нужно учитывать пробелы и знаки препинания.
palindrome('racecar') === true
palindrome('table') === false
P.s Решение будет позже)
Наша функция partial позволяет фиксировать только первые аргументы. Усовершенствуй ее, чтобы зафиксировать можно было любые аргументы, пропущенные аргументы обозначаются с помощью undefined:
function test(a, b, c) { return 'a=' + a + ',b=' + b + ',c=' + c; }
var test1_3 = partialAny(test, 1, undefined, 3);
console.log(test1_3(5)); // a=1,b=5,c=3
Чтобы избежать путаницы, пусть новая функция называется partialAny
function test(a, b, c) { return 'a=' + a + ',b=' + b + ',c=' + c; }
var test1_3 = partialAny(test, 1, undefined, 3);
console.log(test1_3(5)); // a=1,b=5,c=3
Чтобы избежать путаницы, пусть новая функция называется partialAny
Promise API
Метод Promise.all принимает массив промисов (может принимать любой перебираемый объект, но обычно используется массив) и возвращает новый промис.
Каким будет вывод этого фрагмента кода?
console.log('start');
const promise1 = new Promise((resolve, reject) => {
console.log(1)
})
console.log('end');
Метод Promise.all принимает массив промисов (может принимать любой перебираемый объект, но обычно используется массив) и возвращает новый промис.
Каким будет вывод этого фрагмента кода?
console.log('start');
const promise1 = new Promise((resolve, reject) => {
console.log(1)
})
console.log('end');
Создайте функцию-конструктор
```javascript
function Book(title, author) {
this.title = title;
this.author = author;
this.toString = function() {
return
};
this.isWrittenBy = function(name) {
return this.author === name;
};
}
const book1 = new Book('Война и мир', 'Лев Толстой');
console.log(book1.toString()); // Название: Война и мир, автор: Лев Толстой
console.log(book1.isWrittenBy('Лев Толстой')); // true
console.log(book1.isWrittenBy('Федор Достоевский')); // false
Book
, у которой есть свойства title
и author
, и методы toString
(возвращает строку вида "Название: {title}, автор: {author}"
) и isWrittenBy
(принимает имя автора и возвращает true
, если автор совпадает с переданным именем).```javascript
function Book(title, author) {
this.title = title;
this.author = author;
this.toString = function() {
return
Название: ${this.title}, автор: ${this.author}
;};
this.isWrittenBy = function(name) {
return this.author === name;
};
}
const book1 = new Book('Война и мир', 'Лев Толстой');
console.log(book1.toString()); // Название: Война и мир, автор: Лев Толстой
console.log(book1.isWrittenBy('Лев Толстой')); // true
console.log(book1.isWrittenBy('Федор Достоевский')); // false
Привет! Как отдохнули? Готовы решать задачки?
Найдите ошибки в коде:
1. Код должен вывести элемент объекта:
let obj = {x: 1, y: 2, z: 3};
console.log(obj[x]);
2. Код должен вывести элемент объекта по ключу из переменной:
let obj = {x: 1, y: 2, z: 3};
let key = 'x';
console.log(obj.key);
3. Код должен вывести сумму элементов объекта:
let obj = {x: 1, y: 2, z: 3};
let sum = obj[x] + obj[y] + obj[x];
console.log(obj);
4. Код должен вывести количество элементов объекта:
let obj = {x: 1, y: 2, z: 3};
console.log(obj.length);
P.s Возможно задачка имеет правильное решение)
Найдите ошибки в коде:
1. Код должен вывести элемент объекта:
let obj = {x: 1, y: 2, z: 3};
console.log(obj[x]);
2. Код должен вывести элемент объекта по ключу из переменной:
let obj = {x: 1, y: 2, z: 3};
let key = 'x';
console.log(obj.key);
3. Код должен вывести сумму элементов объекта:
let obj = {x: 1, y: 2, z: 3};
let sum = obj[x] + obj[y] + obj[x];
console.log(obj);
4. Код должен вывести количество элементов объекта:
let obj = {x: 1, y: 2, z: 3};
console.log(obj.length);
P.s Возможно задачка имеет правильное решение)
Преимущества JavaScript :
- Незаменимость в веб-разработке. JS – это основная «технология» для клиент-серверных моделей и программирования «для интернета».
- Наличие полной интеграции с версткой страниц и серверной частью.
- Рациональность применения и простоту. Решить элементарную задачу при помощи JS удается за несколько минут. Сам - ЯП обладает понятным синтаксисом, который не требует углубленного изучения.
- Скорость работы. JS может сделать итоговое приложение более быстрым и удобным.
- Производительность.
- Комфортность использования пользовательских интерфейсов.
- Наличие собственной мощной экосистемы (инфраструктуры). Особо заметно в последние годы. Пример – появление огромного количества полезных фреймворков, которые подойдут для любого случая.
- Незаменимость в веб-разработке. JS – это основная «технология» для клиент-серверных моделей и программирования «для интернета».
- Наличие полной интеграции с версткой страниц и серверной частью.
- Рациональность применения и простоту. Решить элементарную задачу при помощи JS удается за несколько минут. Сам - ЯП обладает понятным синтаксисом, который не требует углубленного изучения.
- Скорость работы. JS может сделать итоговое приложение более быстрым и удобным.
- Производительность.
- Комфортность использования пользовательских интерфейсов.
- Наличие собственной мощной экосистемы (инфраструктуры). Особо заметно в последние годы. Пример – появление огромного количества полезных фреймворков, которые подойдут для любого случая.