Топ-10 фишек программирование на JavaScript ОБЪЕКТЫ, все что ты должен знать!

Поділитися
Вставка
  • Опубліковано 24 чер 2020
  • Мы продолжаем серию уроков топ фишек программирования на javascript и в этом видео мы рассмотрим методы объектов JS. Я считаю что данные методы должен знать каждый начинающий junior javascript программист. Если вы новичек Javascript то вам будет очень полезно ознакомиться как работать с объектами js на практике. Мы подробно рассмотрели javascript методы Object keys, values и entries, а так же Object is, freeze и seal. Если вы о них никогда не слышали, то открывайте видео прямо сейчас, если забыли как они работают, вам неминуемо нужно смотреть это видео. Это краткие уроки JavaScript для начинающих с самыми основными методами работы программирования под веб разработку на данном языке.

КОМЕНТАРІ • 117

  • @user-zs7op4li5p
    @user-zs7op4li5p 4 роки тому +135

    Есть еще одна полезная фишка: ставить таймкоды на видос. ;)

    • @aammssaamm
      @aammssaamm 4 роки тому +9

      И не забивать эфир мерзкой музыкой.

    • @_dyats
      @_dyats 3 роки тому +1

      ему не выгодно, тогда не будут смотреть все видео

    • @alekseikriuchkov9193
      @alekseikriuchkov9193 2 роки тому +1

      @@aammssaamm именно по этой причине выключил на 2й минуте, и соответственно диз...

    • @Chihryn
      @Chihryn Рік тому

      @@_dyats Все для людей!

    • @t.i.i8608
      @t.i.i8608 Рік тому

      Вот именно

  • @EgorMoscowNeverSleep
    @EgorMoscowNeverSleep 3 роки тому +19

    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.

    • @maxexc6939
      @maxexc6939 3 місяці тому

      дружище спасибо, он тут много чего ещё не показал, случайно зашёл) научил бы он народ читать документацию - цены бы не было ;)

  • @vkrian790
    @vkrian790 3 роки тому

    Большое спасибо за видео!

  • @yesdoit9914
    @yesdoit9914 Рік тому

    Спасибо очень понятно и доступно объяснил 👍

  • @Ireile
    @Ireile 4 роки тому

    Спасибо за видео. 👍🏻

  • @user-zk5ok6wn2l
    @user-zk5ok6wn2l 4 роки тому +1

    Круто! Мне понравилось видео! Продолжай в том же духе. 👍

  • @vova2966
    @vova2966 4 роки тому

    Спасибо за полезный видос

  • @yakubyakubov7799
    @yakubyakubov7799 4 роки тому

    классный видос продолжайте аж все про JS

  • @vadimmostovenko164
    @vadimmostovenko164 4 роки тому +1

    Добрый день, видео очень полезное, хотя возможно стоит сделать полный разбор того, как можно создавать объекты в js, из замечаний, постарайся пожалуйста не так спешить, несколько моментов было очень срезанных, когда нужно ещё ловить секунду, на которой нужно паузу поставить, что бы увидеть, что там консоль выдала

  • @user-cj3zz4cv5r
    @user-cj3zz4cv5r 3 роки тому

    ТОП! чего то давно не было новых видосов((

  • @mrakcw
    @mrakcw 4 роки тому

    Найс) да, да, пора использовать таймкод)

  • @maksymsalov7362
    @maksymsalov7362 3 роки тому +3

    музыка мешает воспринимать информацию(слишком громко), но в общем видео очень полезное , лайк)

  • @redalert7658
    @redalert7658 2 роки тому

    топчик

  • @practicalgnome7372
    @practicalgnome7372 4 роки тому

    И ещё одна полезная фишка- шорткат для команды console.log() :)

  • @komiljonroziyev7291
    @komiljonroziyev7291 4 роки тому

    Спасибо. А было видео про ООП и создание объектов с помощью функций (function User(name) {this.name = name}) или с помощью классов? Если было скиньте ссылку пожалуйста.

    • @user-mm3vk2jz3i
      @user-mm3vk2jz3i 4 роки тому

      Не функций, а прототипов.

    • @komiljonroziyev7291
      @komiljonroziyev7291 4 роки тому

      @@user-mm3vk2jz3i ну да, я пока даже не джун. Вот про них вопрос

    • @user-sz4nz5dn3k
      @user-sz4nz5dn3k 3 роки тому

      @@user-mm3vk2jz3i function User() {} это прототип что-ли?)))))))))))

  • @arsa946
    @arsa946 2 роки тому +1

    Вопрос, а как в объекте передать функцию, например типа .text()?
    Чтобы она пристыковалась к вызову типа resque.text()?

    • @chipdouglas9495
      @chipdouglas9495 8 місяців тому

      var obj = { name: "Mavr", text: function( txt ){ console.log( txt ); }, age: 6 }
      obj.text("yo")

    • @_c.ute.wolf_1576
      @_c.ute.wolf_1576 5 місяців тому

      Недавно тоже об этом задумался. По факту в Object.assing() первым аргументом мы можем передать объект, а вторым объект с методом.
      const obj = {
      name: 'Alex',
      age: 25
      }
      const func = (let) => {
      console.log(let)
      }
      Object.assign(obj, {func})
      obj.func(4)
      Теперь у объекта obj появился метод func

  • @Leshanga
    @Leshanga 3 місяці тому

    Привет ,подскажи пожалуйста ,что почитать и или как загуглить как обращаться к разным значениям ,когда циклом перебираешь массив на пример или обьект .Надеюсь что понятно обьяснил вопрос ,но перечитываю и понимаю что не очень 😢

    • @mansurhamidoff1853
      @mansurhamidoff1853 2 місяці тому

      myArray.forEach - цикл чтобы просто пройти по массиву с названием myArray. Есть и другие методы в этом духе для различных нужд вроде .some, .every, .map, .find, .reduce, .filter. Погуглите чтобы узнать побольше.
      А для объектов есть статические методы самого конструктора которые переводят объект в массив, а дальше уже применяете методы которые использовали с массивами.
      Object.keys(myObject) - получить массив из ключей объекта myObject
      Object.values(myObject) - массив из значений
      Object.entries(myObject) - массив из массивов пары [ключ, значение] объекта myObject.
      А дальше как с массивами
      Object.values(myObject).forEach(...)

  • @komiljonroziyev7291
    @komiljonroziyev7291 4 роки тому

    Спасибо. Следующий вопрос может быть банальный. А где можно тренировать то, чему научился, то есть где найти Real life tasks кроме как искать работу?

    • @alexanderm6187
      @alexanderm6187 4 роки тому +1

      Используй для этого pet projects - просто придумай любой проект и реализуй то, что придумал. Это может быть сайт для друга или какой-нибудь сервис - все, что угодно.

    • @k0dzer0
      @k0dzer0 4 роки тому +1

      codewars вроде называется

    • @komiljonroziyev7291
      @komiljonroziyev7291 4 роки тому

      @@alexanderm6187 окей, спс. Ща в Гугле поищу что можно сделать

    • @aammssaamm
      @aammssaamm 4 роки тому +1

      Если вы не знаете где это тренировать, то вам нужно искать другую работу.

  • @inigoloy
    @inigoloy 4 роки тому +2

    Нам очень не хватает рассказа про связку React, GraphQL, Apollo, MongoDB

  • @edkar4629
    @edkar4629 4 роки тому

    WDB последние две недели: ты должен знать!!

    • @SuprunAlexey
      @SuprunAlexey  4 роки тому +1

      А что, нет? Завтра ещё покажу то, что должны знать 😇

  • @user-gf8mo6pg5o
    @user-gf8mo6pg5o 4 роки тому

    Можно название программы на который идёт запись видео? (Этого видео)

    • @SuprunAlexey
      @SuprunAlexey  4 роки тому

      А вам зачем?

    • @user-gf8mo6pg5o
      @user-gf8mo6pg5o 4 роки тому

      Web Developer Blog хотел бы тоже пользоваться, выглядит довольно красиво

  • @user-mm3vk2jz3i
    @user-mm3vk2jz3i 4 роки тому +4

    Ролик вроде бы не плохой, но автор много оговаривается. Например, в самой первой "фишке" он называет свойство объекта и его значение парой ключ-значение, несмотря на то, что пара ключ-значение используется в ассоциативном массиве.

    • @TDmitry412
      @TDmitry412 4 роки тому

      Страшный и ужасный js )

    • @egorkuznetski8459
      @egorkuznetski8459 4 роки тому

      все он правильно говорит, в js объект это и есть ассоциативный массив.
      learn.javascript.ru/object - Свойство - это пара «ключ: значение»
      developer.mozilla.org/ru/docs/Web/JavaScript/Guide/Working_with_Objects - Объект - это набор свойств, и каждое свойство состоит из имени и значения, ассоциированного с этим именем.

  • @sergeyvladimirov9994
    @sergeyvladimirov9994 2 роки тому

    Нигде не могу найти как обьекту записать ключ и значение?? запись res[property[0]] = property[0] приводит к записи значение:значение, ключ: ключ

  • @elenasmirnova3549
    @elenasmirnova3549 Рік тому

    видео полезное. спасибо! но зачем музыка на заднем плане?! она бесит если честно и отвлекает очень!

  • @maxexc6939
    @maxexc6939 3 місяці тому

    спсб, а где прототипы? и контекст

  • @agasitashchyan6036
    @agasitashchyan6036 2 роки тому +1

    Я как понимаю JS только для отображение кое чего в консоль ..... может Кто то показать зачем нужны все умение создаваем переменных массивов вызов по селекторам тегам и тогда ли .. чтобы все выведись в консоль???

    • @chipdouglas9495
      @chipdouglas9495 8 місяців тому

      жс например получает по ajax с сервера массив обектов, вот перебираеш их и например выводиш на экран

  • @user-lc2gd3nm9s
    @user-lc2gd3nm9s 4 роки тому +1

    Го обзор на Bootstrap 5

    • @SuprunAlexey
      @SuprunAlexey  4 роки тому

      Будет

    • @user-lc2gd3nm9s
      @user-lc2gd3nm9s 4 роки тому

      @@SuprunAlexey спойлер: jquery, прощай. Спойлер 2: переделали сетку

    • @user-lc2gd3nm9s
      @user-lc2gd3nm9s 4 роки тому

      @@SuprunAlexey borderы у форм контролов стали толще, кнопки стали цветнее

  • @user-ch2zd8bf1e
    @user-ch2zd8bf1e 4 роки тому +2

    keys это не кейс(case) а кииз

  • @Layvis_
    @Layvis_ 4 роки тому

    сниппет в vscode для console.log() -> clg

    • @SuprunAlexey
      @SuprunAlexey  4 роки тому

      У меня другой сниппет его перебил, этот не работает))

  • @Shiwchik
    @Shiwchik 3 роки тому +1

    Какой самый простой способ добавить значение к уже существующему ключу в объекте? почему в интернете и в ютубе нет ответа нормального?

    • @chipdouglas9495
      @chipdouglas9495 8 місяців тому +1

      obj.key = val;

    • @Shiwchik
      @Shiwchik 8 місяців тому

      @@chipdouglas9495 спасибо конечно, но я уже бросил учёбу js =(

  • @showrun4747
    @showrun4747 10 місяців тому

    музыку не ставьте, настроение в момент записи видео и настроения тех кому вы его делает еобычно не сопадает

  • @Andriy063
    @Andriy063 4 роки тому

    Какой можно представить пример реального использования freeze?

    • @mdreal3264
      @mdreal3264 4 роки тому

      Этот вопрос мне тоже интересно. И ещё seal тоже.

    • @egorkuznetski8459
      @egorkuznetski8459 4 роки тому +1

      удобно использовать для конфигов или enums

  • @jesshollman3308
    @jesshollman3308 4 роки тому

    Здравствуйте! Проверьте пожалуйста почту c предложением от ConveyThis.

    • @SuprunAlexey
      @SuprunAlexey  4 роки тому

      Здравствуйте, ничего не приходило

    • @jesshollman3308
      @jesshollman3308 4 роки тому

      @@SuprunAlexey напишите свою актуальную почту

  • @lostvegas6675
    @lostvegas6675 4 роки тому

    Как перебрать вложенные объекты, при условии что заранее не известно будут ли они в объекте и сколько их будет, например какой ни будь JSON с большим колличеством вложенностей?

    • @user-mm3vk2jz3i
      @user-mm3vk2jz3i 4 роки тому

      Не могу себе представить где это может пригодиться. В API используются конкретные свойства.

    • @lostvegas6675
      @lostvegas6675 4 роки тому

      @@user-mm3vk2jz3i Бывают задачи когда не знаешь какой json прилетит, и нужно его разобрать и отобразить

    • @user-gv5no1ot3n
      @user-gv5no1ot3n 4 роки тому

      Попробуй использовать цикл while

    • @Arel368
      @Arel368 4 роки тому

      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])] ;
      }

    • @user-mm3vk2jz3i
      @user-mm3vk2jz3i 4 роки тому

      @@lostvegas6675 ну вообще можно при помощи if. Например если существует obj.property, то записываем этот property в другой объект или отдельную переменную.

  • @user-hi2rh9wz6f
    @user-hi2rh9wz6f 4 роки тому +1

    Обясните пожалуйста ${} что значит эта конструкция

    • @user-mm3vk2jz3i
      @user-mm3vk2jz3i 4 роки тому +3

      Используется в строке, называется "template strings", нужна для того чтобы подставить значение переменной или какое-то выражение в строку. Например, "
      const port = 3000;
      console.log(`Сераер запущен на порту ${port}...`);
      ". В консоль выведется "Сервер запущен на порту 3000..."

  • @valeriaiakovleva3961
    @valeriaiakovleva3961 Рік тому

    За видео спасибо,но музыка 🤦она не нужна

  • @lpseeen5030
    @lpseeen5030 4 роки тому +1

    где брать практические задания js

    • @SuprunAlexey
      @SuprunAlexey  4 роки тому

      У меня на канале есть плейлист практика js

    • @mini_clop
      @mini_clop 4 роки тому +1

      www.codewars.com/

  • @Bugsy0987987
    @Bugsy0987987 2 роки тому

    начало 1:15

  • @Andris_Briedis
    @Andris_Briedis 4 роки тому

    Я не понял. Почему свойства const obj могут быть изменены? С каких пор const не константина?
    Вот кто это придумал???
    w3s перечитываю: "Constant Arrays can Change". ????????
    На*ре*а тогда вообще "const"?

    • @multithread_cat
      @multithread_cat 4 роки тому

      const означает что переменной нельзя присвоить новый объект, насколько я знаю

    • @alexandermedinets9838
      @alexandermedinets9838 4 роки тому

      если объект помечен ключевым словом const, то ему нельзя присваивать другой объект. Изменять же его содержимое мы можем. В этом разница между ссылочными типами данных(каким является Object) и значимыми

  • @artem0n
    @artem0n 4 роки тому +3

    Хотите расскажу главную фишку?
    Пользуйтесь документацией!
    developer.mozilla.org/ru/docs/Web/JavaScript/Reference/Global_Objects/Object
    Ее для кого вообще писали?

  • @fedor4201
    @fedor4201 2 роки тому

    с этой фразой "мы легко получили новый обьект" в 70% раз когда ты это говорил в видео это пиздежь=)

  • @x3mmusic1
    @x3mmusic1 4 роки тому +1

    все так)

    • @SuprunAlexey
      @SuprunAlexey  4 роки тому

      Уверен?

    • @x3mmusic1
      @x3mmusic1 4 роки тому

      @@SuprunAlexey окей, попробовал, был не прав)

    • @alexsmith5841
      @alexsmith5841 4 роки тому

      У const нельзя заменить весь объект, а отдельное свойство без проблем

  • @vladocpro911
    @vladocpro911 3 роки тому

    Keys читается как кис

  • @user-qg9rw8rl3l
    @user-qg9rw8rl3l 4 роки тому

    Многие ждут нового плейлиста по верстки для средних и начинающих.

    • @aammssaamm
      @aammssaamm 4 роки тому +1

      Читайте книжки и документацию. Если не можете, то вам нечего делать в вёрстке.

    • @melenium
      @melenium 11 місяців тому

      @@aammssaammой ой

  • @AhmedGD
    @AhmedGD 4 роки тому

    сказал переменную, а написал const

    • @nastasiya_pant
      @nastasiya_pant 3 роки тому

      Так const-это и есть переменная, только помтоянная

    • @AhmedGD
      @AhmedGD 3 роки тому

      @@nastasiya_pant ну ладно

  • @8_Artem_8
    @8_Artem_8 4 роки тому +5

    за видео like, а вот за английское произношение dislike =)

  • @AndrewRubanov
    @AndrewRubanov 4 роки тому +1

    Все очень сухо и для незнакомого с этой темой так и останется не знакомой темой. Что почему как откуда зачем - автор видео пропускает мимо микрофона. Быстро натараторил, выложил, готово!

  • @user-bc2ru6nh9m
    @user-bc2ru6nh9m 2 роки тому

    Зачем снимать такие видео, что лень зайти в документацию по js(-у)?

  • @SUBSCRIBERSWITHOUTVIDEO-eu3ir
    @SUBSCRIBERSWITHOUTVIDEO-eu3ir 4 роки тому +2

    Какое это переменные ? const - вроде бы константа , let и var переменные . Не понимаю , зачем людей в заблуждение водить ...

    • @user-mm3vk2jz3i
      @user-mm3vk2jz3i 4 роки тому +1

      "Чтобы объявить константную, то есть, неизменяемую переменную, используйте const вместо let". Константа является неизменяемой переменной, то есть её вполне можно назвать типом переменной. Источник: learn.javascript.ru/variables

    • @vitiok78
      @vitiok78 4 роки тому +3

      Делаем так: const a = {value: "1"}; a.value++; console.log(a.value);
      И тогда придёт понимание, что const - это не константа в понимании других языков программирования, а постоянная ссылка (постоянный указатель) на переменную. Но можно спокойно называть её переменной для удобства

    • @mdreal3264
      @mdreal3264 4 роки тому

      @@vitiok78 В твоём примере да. А в этом нет. const a = 0; a++;

    • @user-mm3vk2jz3i
      @user-mm3vk2jz3i 4 роки тому

      @@vitiok78 вы изменяете свойство объекта, а оно, как и элемент массива по индексу, изменяется

    • @vitiok78
      @vitiok78 4 роки тому

      @@mdreal3264 Потому что 0 - это константа.

  • @aammssaamm
    @aammssaamm 4 роки тому

    Что вас так всех клинит на этой мерзкой музыке? Вы глухие что ли?

  • @user-us5uf9tt8i
    @user-us5uf9tt8i 4 роки тому

    аффтар самых первых видео хрень всякую собирает! вроде темы норм, но как наболтает.. просто пи.дец! начинающим явно вредят такие "учителя"! сам то скорее всего ничего путёвого не написал ни разу.. ютубер пля....
    что скажешь, аффтар?я прав?

    • @aammssaamm
      @aammssaamm 4 роки тому

      @@prikirale Ещё один неуч-подчерпыватель. Что подчерпываешь? говнокодец?

  • @Dellon915
    @Dellon915 4 роки тому

    Никакого разбора, все кратко, толку от такого видео 0 ! Зря потратил время