GET /about/index.html HTTP/1.1
POST /guestbook HTTP/1.1
. Или ещё какой-то из методов и адресов.https://
), и попробовать вообще вручную вводить все эти строки, изображая браузер.start
до finish
. start
и домножать, начиная со следующего start + 1
:const multiplyNumbersInRange = (start, finish) => {
let result = start;
let i = start + 1;
while (i <= finish) {
result *= i;
i += 1;
}
return result;
};
multiplyNumbersInRange(1, 3); // 1 * 2 * 3 = 6
start === finish
) function getValue() {
return new Promise(resolve => setTimeout(() => resolve(123), 2000))
.then(data => data * 2);
}
Как вы получите значение 246 из этой функции «в переменную»?const categories = {
mass: 'Масса',
distance: 'Расстояние',
temperature: 'Температура',
time: 'Время',
speed: 'Скорость',
currency: 'Валюта',
};
const categories = {
mass: { title: 'Масса', element: null, data: null, },
distance: { title: 'Расстояние', element: null, data: null, },
temperature: { title: 'Температура', element: null, data: null, },
time: { title: 'Время', element: null, data: null, },
speed: { title: 'Скорость', element: null, data: null, },
currency: { title: 'Валюта', element: null, data: null, },
};
mass
у вас.Object.entries(categories).forEach(([ name, item ]) => {
const el = document.createElement('div'); // это внешний div кнопки
// el.classList.add(...)
el.insertAdjacentHTML('beforeend', `
<p class="value-item__title">${item.title}</p>
<img src="assets/img/values/${name}.svg" alt="" class="svg-icon value-item__img">
`);
el.addEventListener('click', () => clickHandler(name));
// по этому name можно вытащить categories[name]
divValues.appendChild(el);
});
onclick="calc.txt.value+=
txt.value
, кнопки вызывали общую функцию: onclick="clicked('*')"
. И напшите эту функцию, которая на вход получает символ, и дальше решает, что с ним делать. Например, сначала берёт существующее значение txt.value, смотрит на его последний символ, и либо добавляет, либо заменяет его.только на первую кнопку...
querySelector
querySelector()
находит и отдаёт первый элемент, подходящий селектору. Остальные остаются вне игры.querySelectorAll()
выберет все подходящие. Но потом коллекцию (NodeList) надо обходить циклом. Например, querySelectorAll(...).forEach(item => что-то-сделать-с-item)
.button.btn-more
, дальше исходя из этой кнопки находить в DOM-дереве ближайшие элементы, которым надо менять классы. Делегирование событий. game:
while (true) {
const Game = {
countAttempts: 0,
wordsList: ['javascript', 'python', 'computer', 'aboba'], //слова, которые надо отгадывать
badLetters: [], //буквы, которые не были найдены в слове
rndWordChoice: function () {
//рандомайзер для выбора слова
return this.wordsList[Math.floor(Math.random() * this.wordsList.length)];
},
};
let word = Game.rndWordChoice();
let underlineWord = '_'.repeat(word.length);
round:
while (true) {
alert(`Угадайте слово - ${underlineWord}\nБукв в слове - ${underlineWord.length}\nНеудачных попыток - ${Game.badLetters.length}`)
const userInput = prompt('Введите букву:');
if (userInput == null) break game;
if (userInput.length !== 1) {
alert('Нужна ровно 1 буква');
continue;
}
const letter = userInput.toLocaleLowerCase();
if (word.includes(letter)) {
let index = word.indexOf(letter);
while (index > -1) {
underlineWord = underlineWord.substring(0, index) + letter + underlineWord.substring(index + 1);
index = word.indexOf(letter, index + 1);
}
} else {
Game.badLetters.push(letter);
}
}
}
const TickersArray = []
const getData = url => fetch(url).then(response => response.json());
const getKlines = async ticker => {
const commits = await getData(`https://fapi.binance.com/fapi/v1/klines?symbol=${ticker}&interval=1m&limit=499`);
// console.log(commits);
TickersArray.push(ticker);
return TickersArray;
};
const getTickers = async url => {
const contentCoins = await getData(url);
contentCoins.forEach(x => {
const { symbol } = x;
if (symbol.includes('USDT') && !symbol.includes('_')) {
// getKlines(symbol);
TickersArray.push(symbol);
}
});
return TickersArray;
};
getTickers('https://fapi.binance.com/fapi/v1/ticker/price').then(arr => {
console.log(arr === TickersArray, TickersArray);
});
isNaN()
проверяет, что аргумент — это NaN – специальное значение НеЧисло ("NaN" = "Not a Number")Object.values(
{ "Vasiliy": 100, "Piotr": "300", "Daria": 250, isPaid: false }
)
.map(parseFloat) // что можно – преобразовать в число, или NaN
.filter(value => !isNaN(value)) // отсеить NaN, оставить только числа
.reduce((acc, c) => acc + c) // суммировать
// 650
-.then(response => response.text())
-.then(result => console.log(result))
+.then(response => response.json())
+.then(({ location }) => {
+ if (!location) return; // не нашлось
+ const { data } = location;
+ const { country, region_with_type, city_with_type } = data;
+ // теперь их куда-то вставить в разметку
+})