всем привет подскажите как правильно написать промис который должен вернуть результат запроса
async function db (sql){ return new Promise((resolve, reject) => { connection.query(sql, function (err, result) { if (err) throw err; resolve = result }); }); }
всем привет подскажите как правильно написать промис который должен вернуть результат запроса
async function db (sql){ return new Promise((resolve, reject) => { connection.query(sql, function (err, result) { if (err) throw err; resolve = result }); }); }
вопрос по callback, правильно я понял, что любая функция объявленная параметром в другой функции является колбэком, например стрелочная функция в аddEventListener("click", ()=>{}); или sayHellow в setInterval(sayHellow, 2000)
так пацаны здарова, кароч есть код https://codepen.io/nursultanfront/pen/WNGPNEX у нас есть цикл, цикл запускается и вызвает функцию bar, там он меняет значение i на тройку (3), суть вопроса в том что почему цикл видит его, ведь область видимости видит то что снаружи, я просто не понимаю почему цикл видит i, ведь функция его даже не возвращает, или я не правильно понимаю (изучаю область видимости)
это потому что ты через var объявляешь в цикле переменную, если на let поменять то все норм
так пацаны здарова, кароч есть код https://codepen.io/nursultanfront/pen/WNGPNEX у нас есть цикл, цикл запускается и вызвает функцию bar, там он меняет значение i на тройку (3), суть вопроса в том что почему цикл видит его, ведь область видимости видит то что снаружи, я просто не понимаю почему цикл видит i, ведь функция его даже не возвращает, или я не правильно понимаю (изучаю область видимости)
bar находит объявление i в области видимости foo и присваивает ей значение. Это влияет на цикл. Если сделать let то I будет в блочной области видимости цикла и bar не найдёт её, а в этом случае, вне строгого режима, присвоит I глобальному объекту.
аха то есть из-за того что я объявил через var, i перезаписывается??? потому что да я сделал через let и все работает заебись, значит это housting???
Всплытие там не принципиально, если определить i через let вне блока цикла, но до вызова bar - будет та же ситуация, потому что к моменту вызова bar переменная появится в foo.