Топ-10 фишек программирование на JavaScript ОБЪЕКТЫ, все что ты должен знать!
Вставка
- Опубліковано 24 чер 2020
- Мы продолжаем серию уроков топ фишек программирования на javascript и в этом видео мы рассмотрим методы объектов JS. Я считаю что данные методы должен знать каждый начинающий junior javascript программист. Если вы новичек Javascript то вам будет очень полезно ознакомиться как работать с объектами js на практике. Мы подробно рассмотрели javascript методы Object keys, values и entries, а так же Object is, freeze и seal. Если вы о них никогда не слышали, то открывайте видео прямо сейчас, если забыли как они работают, вам неминуемо нужно смотреть это видео. Это краткие уроки JavaScript для начинающих с самыми основными методами работы программирования под веб разработку на данном языке.
Есть еще одна полезная фишка: ставить таймкоды на видос. ;)
И не забивать эфир мерзкой музыкой.
ему не выгодно, тогда не будут смотреть все видео
@@aammssaamm именно по этой причине выключил на 2й минуте, и соответственно диз...
@@_dyats Все для людей!
Вот именно
2:17 Object.assign *не создаёт* новый объект из первого параметра (если это уже объект). Первый параметр только дополняется новыми свойствами, которые передаются во втором и последующих параметрах функции Object.assign.
Выдержка из спецификации:
Object.assign ( target, ...sources )
"function is used to copy the values of all of the enumerable own properties from one or more source objects to a target object."
Таким образом пример на 8:30 с Object.is абсолютно бессмыслен, т.к. Object.assign вернёт тот же самый объект.
"The length property of the assign method is 2."
Свойство length функции = 2, поэтому, минимальное количество параметров функции Object.assign - 2 параметра.
Object.is бесполезен на практике. Исключение: если нужно сравнить -0 и +0 и значение NaN.
дружище спасибо, он тут много чего ещё не показал, случайно зашёл) научил бы он народ читать документацию - цены бы не было ;)
Большое спасибо за видео!
Спасибо очень понятно и доступно объяснил 👍
Спасибо за видео. 👍🏻
Круто! Мне понравилось видео! Продолжай в том же духе. 👍
Спасибо за полезный видос
классный видос продолжайте аж все про JS
Добрый день, видео очень полезное, хотя возможно стоит сделать полный разбор того, как можно создавать объекты в js, из замечаний, постарайся пожалуйста не так спешить, несколько моментов было очень срезанных, когда нужно ещё ловить секунду, на которой нужно паузу поставить, что бы увидеть, что там консоль выдала
ТОП! чего то давно не было новых видосов((
Найс) да, да, пора использовать таймкод)
музыка мешает воспринимать информацию(слишком громко), но в общем видео очень полезное , лайк)
топчик
И ещё одна полезная фишка- шорткат для команды console.log() :)
Агаааа
Спасибо. А было видео про ООП и создание объектов с помощью функций (function User(name) {this.name = name}) или с помощью классов? Если было скиньте ссылку пожалуйста.
Не функций, а прототипов.
@@user-mm3vk2jz3i ну да, я пока даже не джун. Вот про них вопрос
@@user-mm3vk2jz3i function User() {} это прототип что-ли?)))))))))))
Вопрос, а как в объекте передать функцию, например типа .text()?
Чтобы она пристыковалась к вызову типа resque.text()?
var obj = { name: "Mavr", text: function( txt ){ console.log( txt ); }, age: 6 }
obj.text("yo")
Недавно тоже об этом задумался. По факту в Object.assing() первым аргументом мы можем передать объект, а вторым объект с методом.
const obj = {
name: 'Alex',
age: 25
}
const func = (let) => {
console.log(let)
}
Object.assign(obj, {func})
obj.func(4)
Теперь у объекта obj появился метод func
Привет ,подскажи пожалуйста ,что почитать и или как загуглить как обращаться к разным значениям ,когда циклом перебираешь массив на пример или обьект .Надеюсь что понятно обьяснил вопрос ,но перечитываю и понимаю что не очень 😢
myArray.forEach - цикл чтобы просто пройти по массиву с названием myArray. Есть и другие методы в этом духе для различных нужд вроде .some, .every, .map, .find, .reduce, .filter. Погуглите чтобы узнать побольше.
А для объектов есть статические методы самого конструктора которые переводят объект в массив, а дальше уже применяете методы которые использовали с массивами.
Object.keys(myObject) - получить массив из ключей объекта myObject
Object.values(myObject) - массив из значений
Object.entries(myObject) - массив из массивов пары [ключ, значение] объекта myObject.
А дальше как с массивами
Object.values(myObject).forEach(...)
Спасибо. Следующий вопрос может быть банальный. А где можно тренировать то, чему научился, то есть где найти Real life tasks кроме как искать работу?
Используй для этого pet projects - просто придумай любой проект и реализуй то, что придумал. Это может быть сайт для друга или какой-нибудь сервис - все, что угодно.
codewars вроде называется
@@alexanderm6187 окей, спс. Ща в Гугле поищу что можно сделать
Если вы не знаете где это тренировать, то вам нужно искать другую работу.
Нам очень не хватает рассказа про связку React, GraphQL, Apollo, MongoDB
Ок
WDB последние две недели: ты должен знать!!
А что, нет? Завтра ещё покажу то, что должны знать 😇
Можно название программы на который идёт запись видео? (Этого видео)
А вам зачем?
Web Developer Blog хотел бы тоже пользоваться, выглядит довольно красиво
Ролик вроде бы не плохой, но автор много оговаривается. Например, в самой первой "фишке" он называет свойство объекта и его значение парой ключ-значение, несмотря на то, что пара ключ-значение используется в ассоциативном массиве.
Страшный и ужасный js )
все он правильно говорит, в js объект это и есть ассоциативный массив.
learn.javascript.ru/object - Свойство - это пара «ключ: значение»
developer.mozilla.org/ru/docs/Web/JavaScript/Guide/Working_with_Objects - Объект - это набор свойств, и каждое свойство состоит из имени и значения, ассоциированного с этим именем.
Нигде не могу найти как обьекту записать ключ и значение?? запись res[property[0]] = property[0] приводит к записи значение:значение, ключ: ключ
видео полезное. спасибо! но зачем музыка на заднем плане?! она бесит если честно и отвлекает очень!
спсб, а где прототипы? и контекст
Я как понимаю JS только для отображение кое чего в консоль ..... может Кто то показать зачем нужны все умение создаваем переменных массивов вызов по селекторам тегам и тогда ли .. чтобы все выведись в консоль???
жс например получает по ajax с сервера массив обектов, вот перебираеш их и например выводиш на экран
Го обзор на Bootstrap 5
Будет
@@SuprunAlexey спойлер: jquery, прощай. Спойлер 2: переделали сетку
@@SuprunAlexey borderы у форм контролов стали толще, кнопки стали цветнее
keys это не кейс(case) а кииз
сниппет в vscode для console.log() -> clg
У меня другой сниппет его перебил, этот не работает))
Какой самый простой способ добавить значение к уже существующему ключу в объекте? почему в интернете и в ютубе нет ответа нормального?
obj.key = val;
@@chipdouglas9495 спасибо конечно, но я уже бросил учёбу js =(
музыку не ставьте, настроение в момент записи видео и настроения тех кому вы его делает еобычно не сопадает
Какой можно представить пример реального использования freeze?
Этот вопрос мне тоже интересно. И ещё seal тоже.
удобно использовать для конфигов или enums
Здравствуйте! Проверьте пожалуйста почту c предложением от ConveyThis.
Здравствуйте, ничего не приходило
@@SuprunAlexey напишите свою актуальную почту
Как перебрать вложенные объекты, при условии что заранее не известно будут ли они в объекте и сколько их будет, например какой ни будь JSON с большим колличеством вложенностей?
Не могу себе представить где это может пригодиться. В API используются конкретные свойства.
@@user-mm3vk2jz3i Бывают задачи когда не знаешь какой json прилетит, и нужно его разобрать и отобразить
Попробуй использовать цикл while
Obj = {};
Obj-arr= Object.keys(Obj);
for (var i = 0; i < Obj-arr.lenght; i++) {
console.log(“ключ : "+ Obj-arr[i]);
console.log(“значение : "+ Obj[Obj-arr[i])] ;
}
@@lostvegas6675 ну вообще можно при помощи if. Например если существует obj.property, то записываем этот property в другой объект или отдельную переменную.
Обясните пожалуйста ${} что значит эта конструкция
Используется в строке, называется "template strings", нужна для того чтобы подставить значение переменной или какое-то выражение в строку. Например, "
const port = 3000;
console.log(`Сераер запущен на порту ${port}...`);
". В консоль выведется "Сервер запущен на порту 3000..."
За видео спасибо,но музыка 🤦она не нужна
где брать практические задания js
У меня на канале есть плейлист практика js
www.codewars.com/
начало 1:15
Я не понял. Почему свойства const obj могут быть изменены? С каких пор const не константина?
Вот кто это придумал???
w3s перечитываю: "Constant Arrays can Change". ????????
На*ре*а тогда вообще "const"?
const означает что переменной нельзя присвоить новый объект, насколько я знаю
если объект помечен ключевым словом const, то ему нельзя присваивать другой объект. Изменять же его содержимое мы можем. В этом разница между ссылочными типами данных(каким является Object) и значимыми
Хотите расскажу главную фишку?
Пользуйтесь документацией!
developer.mozilla.org/ru/docs/Web/JavaScript/Reference/Global_Objects/Object
Ее для кого вообще писали?
с этой фразой "мы легко получили новый обьект" в 70% раз когда ты это говорил в видео это пиздежь=)
все так)
Уверен?
@@SuprunAlexey окей, попробовал, был не прав)
У const нельзя заменить весь объект, а отдельное свойство без проблем
Keys читается как кис
Многие ждут нового плейлиста по верстки для средних и начинающих.
Читайте книжки и документацию. Если не можете, то вам нечего делать в вёрстке.
@@aammssaammой ой
сказал переменную, а написал const
Так const-это и есть переменная, только помтоянная
@@nastasiya_pant ну ладно
за видео like, а вот за английское произношение dislike =)
Все очень сухо и для незнакомого с этой темой так и останется не знакомой темой. Что почему как откуда зачем - автор видео пропускает мимо микрофона. Быстро натараторил, выложил, готово!
Зачем снимать такие видео, что лень зайти в документацию по js(-у)?
Какое это переменные ? const - вроде бы константа , let и var переменные . Не понимаю , зачем людей в заблуждение водить ...
"Чтобы объявить константную, то есть, неизменяемую переменную, используйте const вместо let". Константа является неизменяемой переменной, то есть её вполне можно назвать типом переменной. Источник: learn.javascript.ru/variables
Делаем так: const a = {value: "1"}; a.value++; console.log(a.value);
И тогда придёт понимание, что const - это не константа в понимании других языков программирования, а постоянная ссылка (постоянный указатель) на переменную. Но можно спокойно называть её переменной для удобства
@@vitiok78 В твоём примере да. А в этом нет. const a = 0; a++;
@@vitiok78 вы изменяете свойство объекта, а оно, как и элемент массива по индексу, изменяется
@@mdreal3264 Потому что 0 - это константа.
Что вас так всех клинит на этой мерзкой музыке? Вы глухие что ли?
аффтар самых первых видео хрень всякую собирает! вроде темы норм, но как наболтает.. просто пи.дец! начинающим явно вредят такие "учителя"! сам то скорее всего ничего путёвого не написал ни разу.. ютубер пля....
что скажешь, аффтар?я прав?
@@prikirale Ещё один неуч-подчерпыватель. Что подчерпываешь? говнокодец?
Никакого разбора, все кратко, толку от такого видео 0 ! Зря потратил время