Andrew
http://blog.teamtreehouse.com/uploading-files-ajax
Andrew
а вот глянь
Andrew
Это старая тема)
что-то прояснилось ?
Сергей
что-то прояснилось ?
я просто проверяю объект на массив и делаю JSON.stringify, иначе хз как)
Andrew
)
Сергей
)
Нашел выход
Sergey
Объясните, пожалуйста, простую вещь У меня в проекте использовался jquery param() теперь он deprecated и работает по-другому, и тест падает. expected https://maps.google.com/maps?q=123+Miller+Street actual: https://maps.google.com/maps?q=123%20Miller%20Street в чем разница между плюсиками и %20 ? что можно использовать вместо param с той же целью и тем же результатом? по доке я не сильно догоняю: https://github.com/jquery/jquery-migrate/blob/master/warnings.md#jqmigrate-jqueryparam-no-longer-uses-jqueryajaxsettingstraditional у меня вообще не ajax, нужно просто сериализовать параметры, а jQuery.data( {q: '...'}, jQuery.ajaxSettings.traditional ) возвращает пустой объект В нубах мне не смогли ответить
Sergey
кто-то же должен знать из 4к человек..
Svyatoslav
https://github.com/sviat9440/jsEmojiLib Как изменить язык репы? Почему стоит язык HTML?
Anonymous
Может кто нибудь объяснить почему происходит именно так? Куда записывается 123? https://jsbin.com/vekamovona/edit?js,console var f = function test() { console.log(test); //выведет "function test()..." test = 123; сonsole.log(test); //выведет "function test()...", а не 123 } f(); console.log(test); //test is not defined
Sergey
если тебе нужно переменную внутри функции объявить с тем же именем используй let test в конце ты вызываешь переменную test, а не функцию в test(), поэтому вызывается как неопределенная что именно тебе не понятно?
F_I_N
ребят кто в курсе есть чат по jest?
Anonymous
интересует что именно происходит внутри именованной функции test когда переменной test присваивается значение 123. Куда именно оно записывается?
Sergey
Сергей с такими вопросам лучше в pro.js.noobs
Anonymous
ясно, пасиб.
Matvey
да, вопрос интересный на самом деле
Anonymous
почему тогда второй сonsole.log(test); выводит функцию, а не значение 123? по идее он должен переменную test перезаписать
Anonymous
думал, что будет аналогично этому: var f = function() { } console.log(f); // выведет ƒ test() {.... f = 123; console.log(f); // выведет значение 123
Nikolay
Ребят, может не по теме ,но так как вы все таки с вебом связаны. Может кто нить порекомендовать контор в мск, или не в мск которые делают сайты.
Matvey
@alex_ku дело не в том, что он хочет, а в том, почему так не происходит )
Anonymous
@alex_ku дело не в том, что он хочет, а в том, почему так не происходит )
что не происходит? что должно было произойти?
Matvey
почему test не перезаписалось?
Anonymous
ну наверное. Вопрос: куда записалось 123?
Anonymous
точно не знаю, но скорей всего - компилятор включил защиту от дурака
Anonymous
да
куда указывает test?
Anonymous
http://dmitrysoshnikov.com/ecmascript/ru-chapter-5-functions/#osobennost-imenovannoy-function-expression-nfe 3 абзац. Возник вопрос - почему это единственное свойство внутри именованной функции можно прочитать (для рекурсивного обращения к самой себе, например), но нельзя в него ничего записать?
Evgeniy 🍀
интересует что именно происходит внутри именованной функции test когда переменной test присваивается значение 123. Куда именно оно записывается?
На самом деле всё просто. первый console.log выдаёт is not defined потому что он срабатывает сразу, не дожидаясь пока отработает функция f. В самой функции ты записываешь в глобальную переменную test, при этом локальная как указывала на функцию, так и продолжает указывать
Anonymous
куда указывает test?
Да вот тут: test = 123 что вообще происходит, в какую область памяти это записывается?
Evgeniy 🍀
если ты сделаешь console.log с таймаутом, там будет 123
Evgeniy 🍀
потому что глобальная переменая тест была записана изнутри функции.
Evgeniy 🍀
Но ПОСЛЕ того как отработал первый console.log
Evgeniy 🍀
Да вот тут: test = 123 что вообще происходит, в какую область памяти это записывается?
так как переменная объявлена без var в es5 с "use strict" будет ошибка. В es3 запишется к глобальную область видимости (в поле объекта window)
Matvey
вообщем переменную test перезаписать нельзя. конкретные причины сейчас выясняю )
Matvey
нельзя )
Evgeniy 🍀
в JS вообще можно перезаписывать всё
Evgeniy 🍀
Anonymous
если ты сделаешь console.log с таймаутом, там будет 123
нет, все равно выводит "test is not defined"
Aleksandr
иммутабельность
Aleksandr
ало
Evgeniy 🍀
Object.freeze например
это не настоящая иммутабельность.
Anonymous
Anonymous
сразу до того как полностью выполнится функция f() он не отрабатывает для этого нет никаких причин тут все полностью синхронно
Evgeniy 🍀
Да, я не прав. Тут причина в том, что ты не можешь перезаписать test изнутри test.
Matvey
test нельзя перезаписать, но присваивать ему например дополнительные свойства можно ) надо читать спеку, это ограничение под капотом как-то делается
Matvey
var f = function test() { test.asd = 123; test = 123; console.log('»', Object.keys(test)); // ["asd"] console.log(typeof test); // function } f();
Evgeniy 🍀
Конечно можно, ты же можешь редактировать поля изнутри объекта. Но сам объект из его области видимости полностью переассайнить невозможно.
Anonymous
у него есть способность "ехать"
Anonymous
вот ты выехал в другой город, а потом говоришь - "ехать"= редиска
Anonymous
вопрос на сколько километров разлетятся мозги?
Anonymous
var f = function test() { test.asd = 123; test = 123; console.log('»', Object.keys(test)); // ["asd"] console.log(typeof test); // function } f();
да, какой-то хитрый объект ведет себя так как при передаче объектов в функцию (по значению ссылки)
Anonymous
и чтобы такой фигни не было - перезаписать функцию в процессе выполнения нельзя
Ivan
в стрикт режиме такого и нельзя сделать
Anonymous
Ivan
имя функции в нэймд фанкшн экспрешн доступно только изнутри самой функции и для перезаписи не доступно
Evgeniy 🍀
Справедливо.
Anonymous
еще бы знать посредством какого механизма оно недоступно для записи это действительно надо уже в спеках рыться
Ivan
посредством того же, как и реализовано объявление const
Anonymous
вполне, да.
Dmitry
JS Developer (Москва, Яндекс). Описание вакансии - https://goo.gl/iM2T8B Предварительные вопросы (заполнить обязательно) - https://goo.gl/B5a76M Заполняя форму с вопросами попадаете к HR Яндекса.
Eugene
🤔если Вы из яндекса - не значит что правила соблюдать не надо
Dmitry
Я не из Яндекса. Сорри за спам.
Eugene
🤔хотя вилка есть, вроде все ок :) сорри
Anonymous
вполне, да.
хотя, не вполне. При перезаписи контанты возникает исключение "Uncaught TypeError: Assignment to constant variable." А в случае с test=123; не возникает. Ну то же такое... )
Ivan
В стрикт режиме попробуй)будет тебе эксепшн
Vitalij
Народ, у кого опыт с nodejs есть, что можно реализовывать на клиенте а что на сервере(игра онлайн)
Vitalij
Механика и движения игроков на сервере
Vitalij
Отрисовку и скины можно на клиенте?
Сергей
как запустить цикл с асихронными запросами, чтобы результат каждой итерации передавался в следующую итерацию
Aleksandr
использовать следующую версию ES