1. "Как решить конфликт версий yandex api 2.0 2.1?" - использовать одну версию, вероятно лучше последнюю,
2. Geolocation.get не существует, а второй колбэк не вызывается видимо потому что ymaps.ready складывает колбэки в виде стэка - выполнение начинается с последнего, соответственно если первый колбэк фэйлится, то второй не вызывается
Антон Швец, да, это я видел. Это ничего не меняет, ТС предоставляет полноценную систему типизации используя которую можно не допустить этого. А вы её игнорируете
ТС предполагает полностью детерминированный workflow, нельзя просто выкинуть большую часть функционала и удивляться ошибкам. Ну то есть можно, но это мне кажется странно
Антон Швец, ну такая возможность ведь существует; пока что я не услышал ни одного аргумента против.
"Ошибка это как раз нормально. Ненормально присвоение несуществующему свойству без всяких ошибок" - эээ, ну так вы просто игнорируете систему типизации ТС, естественно будут ошибки. Для этого же и существуют типы
effect_tw, если это вопрос, то в целом да, эти свойства будут доступны. Правда консоль вам их так просто не покажет, нужно будет либо прямо обращаться по ключу который вы использовали при объявлении свойства, либо доставать список ключей с помощью Object.keys, либо использовать console.dir
effect_tw, а что конкретно не укладывается? Вроде всё просто: Object это такая сущность которая умеет хранить в себе данные доступные по строковым ключам, Function расширяет Object в том числе специфическим функционалом - её можно выполнить.
effect_tw, тезис "функция counter возвращает строку" никак не связан с тезисом "как мы можем обращаться к ней как к объекту?". Вы вполне можете обратиться к функции как к объекту (независимо от возвращаемого значения) потому что функция это полноценный объект.
Антон Швец, у вас же вроде конструктор не определён
"можно ли так для функции задавать свойства, не зная еще что она вернёт" - а что конкретно вам в этой ситуации не нравится? И почему не знаем, в интерфейсе же указано что функция вернёт строку. Свойства никак не связаны с возвращаемым значением, по крайней мере в данном конкретном примере
2. Geolocation.get не существует, а второй колбэк не вызывается видимо потому что ymaps.ready складывает колбэки в виде стэка - выполнение начинается с последнего, соответственно если первый колбэк фэйлится, то второй не вызывается