inArray()
возвращает ... ещё одну функцию, которую только что создала при вызове:function inArray(arr) {
const result = function(x) {
// внутри этой функции будет ещё и доступен
// arr, с которым вызвали inArray()
return arr.includes(x);
};
return result;
}
Т.е. вызов inArray()
с каким-то массивом возвращает всего лишь ещё одну функцию, которая принимает любой аргумент, но ещё и «запомнила» конкретный arr
, с которым её создали.const myFilter = inArray([1, 2, 10]);
это свежесозданная функция, которая для любого аргумента возвращает true/false — есть ли это же значение в массиве [1, 2, 10]
const moves = [];
...
moves.push(JSON.stringify(jsonmove));
...
const datamove = "[\n" + moves.join(",\n") + "\n]";
const moves = [];
...
moves.push(jsonmove);
...
const datamove = JSON.stringify(moves);
bot.send_message(message.chat.id, "Привет, {0.first_name}! Нажми на кнопку и перейди на сайт)".format(message.from_user), reply_markup=markup)kup)
bot.send_message(message.chat.id, f'Привет, {0.first_name}! Нажми на кнопку и перейди на сайт)', reply_markup=markup)
import telebot, traceback
TOKEN = ""
bot = telebot.TeleBot(TOKEN)
@bot.message_handler(content_types=['text'])
def lalala(message):
print(message)
try:
bot.send_message(message.chat.id, message.text)
except:
print(traceback.print_exc())
# RUN
bot.polling(none_stop=True)