All language subtitles for 114 Looping Objects_ Object Keys, Values, and Entries.en_US1

af Afrikaans
sq Albanian
am Amharic
ar Arabic
hy Armenian
az Azerbaijani
eu Basque
be Belarusian
bn Bengali
bs Bosnian
bg Bulgarian
ca Catalan
ceb Cebuano
ny Chichewa
zh-CN Chinese (Simplified)
zh-TW Chinese (Traditional)
co Corsican
hr Croatian
cs Czech
da Danish
nl Dutch
en English
eo Esperanto
et Estonian
tl Filipino
fi Finnish
fr French
fy Frisian
gl Galician
ka Georgian
de German
el Greek
gu Gujarati
ht Haitian Creole
ha Hausa
haw Hawaiian
iw Hebrew
hi Hindi
hmn Hmong
hu Hungarian Download
is Icelandic
ig Igbo
id Indonesian
ga Irish
it Italian
ja Japanese
jw Javanese
kn Kannada
kk Kazakh
km Khmer
ko Korean
ku Kurdish (Kurmanji)
ky Kyrgyz
lo Lao
la Latin
lv Latvian
lt Lithuanian
lb Luxembourgish
mk Macedonian
mg Malagasy
ms Malay
ml Malayalam
mt Maltese
mi Maori
mr Marathi
mn Mongolian
my Myanmar (Burmese)
ne Nepali
no Norwegian
ps Pashto
fa Persian
pl Polish
pt Portuguese
pa Punjabi
ro Romanian
ru Russian
sm Samoan
gd Scots Gaelic
sr Serbian
st Sesotho
sn Shona
sd Sindhi
si Sinhala
sk Slovak
sl Slovenian
so Somali
es Spanish
su Sundanese
sw Swahili
sv Swedish
tg Tajik
ta Tamil
te Telugu
th Thai
tr Turkish
uk Ukrainian
ur Urdu
uz Uzbek
vi Vietnamese
cy Welsh
xh Xhosa
yi Yiddish
yo Yoruba
zu Zulu
or Odia (Oriya)
rw Kinyarwanda
tk Turkmen
tt Tatar
ug Uyghur
Would you like to inspect the original subtitles? These are the user uploaded subtitles that are being translated: 1 00:00:01,260 --> 00:00:03,950 So we learned about the for of loop 2 00:00:03,950 --> 00:00:08,170 to loop over a race, which remember is an Iterable, 3 00:00:08,170 --> 00:00:10,640 but we can also loop over objects, 4 00:00:10,640 --> 00:00:12,450 which are not Iterable, 5 00:00:12,450 --> 00:00:14,193 but in an indirect way. 6 00:00:15,950 --> 00:00:18,070 Now we have different options here, 7 00:00:18,070 --> 00:00:21,670 depending on what exactly we want to loop over. 8 00:00:21,670 --> 00:00:25,300 So do we want to loop over the objects, property names 9 00:00:25,300 --> 00:00:28,460 over the values or both together. 10 00:00:28,460 --> 00:00:32,310 And let's start by simply looping over property names. 11 00:00:32,310 --> 00:00:35,860 And so remember they are also called keys. 12 00:00:35,860 --> 00:00:39,450 Now, ultimately we will still have to use the for of loop 13 00:00:39,450 --> 00:00:42,170 to loop over the array, but again, 14 00:00:42,170 --> 00:00:44,420 we're going to do that in an indirect way. 15 00:00:44,420 --> 00:00:47,980 So we're not actually looping over the object itself. 16 00:00:47,980 --> 00:00:51,930 Instead, we're going to loop over, an array. 17 00:00:51,930 --> 00:00:53,163 So let me show you how. 18 00:00:56,220 --> 00:00:57,480 So I'm going to call this day 19 00:00:57,480 --> 00:00:59,490 and you will see in a moment why, 20 00:00:59,490 --> 00:01:00,833 and now of, 21 00:01:01,710 --> 00:01:03,150 and then I say object 22 00:01:04,190 --> 00:01:05,860 dot keys 23 00:01:05,860 --> 00:01:09,830 and we pass in the opening hours object. 24 00:01:09,830 --> 00:01:13,490 And now lets simply to see what happens here. 25 00:01:13,490 --> 00:01:17,290 Log the day variable to the console. 26 00:01:17,290 --> 00:01:20,190 And then I will explain what happened here. 27 00:01:20,190 --> 00:01:23,680 So indeed we get Thursday, Friday and Saturday, 28 00:01:23,680 --> 00:01:28,063 which are exactly the three key names of the object. 29 00:01:29,270 --> 00:01:30,470 So we can see that here. 30 00:01:32,470 --> 00:01:35,930 So indeed Thursday, Friday and Saturday. 31 00:01:35,930 --> 00:01:37,590 So let's take a closer look 32 00:01:37,590 --> 00:01:41,080 at this mysterious objects dot keys. 33 00:01:41,080 --> 00:01:43,030 And let's do that here before actually. 34 00:01:46,460 --> 00:01:51,360 So let's just say properties, equal object 35 00:01:51,360 --> 00:01:52,203 dot keys, 36 00:01:53,590 --> 00:01:55,690 and then again, opening hours. 37 00:01:55,690 --> 00:01:59,743 And now I want to take a look at the result here. 38 00:02:01,880 --> 00:02:05,863 And so indeed it is an array with the three property names. 39 00:02:06,824 --> 00:02:09,400 Okay. And we can actually also use this 40 00:02:09,400 --> 00:02:13,660 to now compute how many properties are in the object. 41 00:02:13,660 --> 00:02:16,960 So let's say we wanted to print a strings saying 42 00:02:16,960 --> 00:02:20,260 how many days the restaurant is open. 43 00:02:20,260 --> 00:02:22,750 That would be simple. Right? 44 00:02:22,750 --> 00:02:24,453 We can just log to the console. 45 00:02:25,360 --> 00:02:26,990 We are 46 00:02:26,990 --> 00:02:28,530 open 47 00:02:28,530 --> 00:02:30,120 on 48 00:02:30,120 --> 00:02:30,953 and then 49 00:02:32,110 --> 00:02:33,030 properties 50 00:02:34,440 --> 00:02:35,403 dot length. 51 00:02:38,270 --> 00:02:41,750 And now we get the number of properties here, of course. 52 00:02:41,750 --> 00:02:44,560 And so that's three days. Okay. 53 00:02:44,560 --> 00:02:47,930 And so this is also the array 54 00:02:47,930 --> 00:02:49,730 that we're going to be looping over. 55 00:02:50,570 --> 00:02:52,410 So properties. 56 00:02:52,410 --> 00:02:55,840 And that's why I called this variable here day 57 00:02:55,840 --> 00:02:59,650 because this array basically contains three days. 58 00:02:59,650 --> 00:03:02,720 Now let's actually do something cool here. 59 00:03:02,720 --> 00:03:05,460 And instead store this into a variable 60 00:03:06,960 --> 00:03:09,120 and let's say open 61 00:03:10,009 --> 00:03:11,940 and then STR for string 62 00:03:14,660 --> 00:03:17,700 And tier a colon because now using the loop, 63 00:03:17,700 --> 00:03:22,230 I will basically keep adding to this string. 64 00:03:22,230 --> 00:03:25,363 So open string plus equal, 65 00:03:26,200 --> 00:03:27,463 and then the current day, 66 00:03:29,580 --> 00:03:31,630 so day and then a comma. 67 00:03:31,630 --> 00:03:34,410 And so here we are then essentially building 68 00:03:34,410 --> 00:03:35,603 just this string. 69 00:03:37,730 --> 00:03:40,383 So that's similar to something we did already before. 70 00:03:41,560 --> 00:03:44,230 And so the end is we are open on three days, 71 00:03:44,230 --> 00:03:47,160 Thursday, Friday, Saturday. 72 00:03:47,160 --> 00:03:50,923 Great. So that's property names. Let's write that here. 73 00:03:57,300 --> 00:03:59,900 Okay. But what if we actually wanted 74 00:03:59,900 --> 00:04:02,053 the property values themselves? 75 00:04:04,420 --> 00:04:06,250 Well, then we would simply use 76 00:04:07,560 --> 00:04:09,310 object 77 00:04:09,310 --> 00:04:11,373 dot values. 78 00:04:12,810 --> 00:04:14,480 So let's also store this here 79 00:04:16,000 --> 00:04:20,390 and of course, then we need to pass in the object itself. 80 00:04:20,390 --> 00:04:23,230 So that's again, opening hours 81 00:04:25,190 --> 00:04:26,580 missing the equal sign. 82 00:04:26,580 --> 00:04:30,460 And now let's just take a look at the values 83 00:04:34,220 --> 00:04:37,700 and indeed, these are exactly the three values 84 00:04:37,700 --> 00:04:40,270 that we specified right here. 85 00:04:40,270 --> 00:04:42,260 So this value here, 86 00:04:42,260 --> 00:04:43,093 right? 87 00:04:43,093 --> 00:04:47,520 So open 12, close 22, this one and this one. 88 00:04:47,520 --> 00:04:48,550 Right? 89 00:04:48,550 --> 00:04:53,170 So before we had the keys, now we have the values 90 00:04:53,170 --> 00:04:55,950 and there no needs to now loop over them again, 91 00:04:55,950 --> 00:04:59,253 because it's going to work exactly the same as here. 92 00:05:00,330 --> 00:05:03,110 Okay. But now to really simulate, 93 00:05:03,110 --> 00:05:05,810 to loop over the entire object, 94 00:05:05,810 --> 00:05:08,310 we actually need the entries. 95 00:05:08,310 --> 00:05:12,610 And so entries is basically names plus the values together. 96 00:05:12,610 --> 00:05:15,570 And we already saw the entries before. 97 00:05:15,570 --> 00:05:17,340 So when we looped over 98 00:05:18,400 --> 00:05:19,340 the array 99 00:05:19,340 --> 00:05:22,370 and I think that's going to be somewhere down here 100 00:05:22,370 --> 00:05:24,700 oh and actually I already passed it. 101 00:05:24,700 --> 00:05:27,140 So indeed here it is. 102 00:05:27,140 --> 00:05:31,360 So here on the array, we called this entries method. 103 00:05:31,360 --> 00:05:34,030 And so the entries returned the index number 104 00:05:34,030 --> 00:05:36,030 and the element itself. 105 00:05:36,030 --> 00:05:38,760 And so we can do something similar on objects 106 00:05:38,760 --> 00:05:42,640 and that will then also return the key and the value. 107 00:05:42,640 --> 00:05:45,780 Okay, now it works differently on objects 108 00:05:45,780 --> 00:05:47,580 because it's not going to be a method 109 00:05:47,580 --> 00:05:50,370 that we call on the object itself. 110 00:05:50,370 --> 00:05:52,630 So here we had the menu array 111 00:05:52,630 --> 00:05:56,450 and then we did that menu array dot entries, 112 00:05:56,450 --> 00:05:57,630 but now here we do it 113 00:05:58,900 --> 00:05:59,733 differently. 114 00:06:00,700 --> 00:06:02,283 So we use again object, 115 00:06:03,180 --> 00:06:05,090 dot entries 116 00:06:05,090 --> 00:06:08,253 and then we pass in once again, the opening hours. 117 00:06:10,140 --> 00:06:12,780 So this distinction between the array and the object 118 00:06:12,780 --> 00:06:15,963 is important as we loop over the entire object. 119 00:06:17,920 --> 00:06:22,920 Okay. I actually run into that problem myself at some point. 120 00:06:23,090 --> 00:06:25,640 And so that's why I'm telling it to you. 121 00:06:25,640 --> 00:06:29,430 But anyway, let's store this again into a variable. 122 00:06:29,430 --> 00:06:32,030 And so then you have all the three versions here, 123 00:06:32,030 --> 00:06:33,883 nicely organized in your code. 124 00:06:35,410 --> 00:06:37,773 And let's take a look here at the entries now. 125 00:06:39,550 --> 00:06:43,300 And so as you might've expected, we now get an array. 126 00:06:43,300 --> 00:06:46,580 So all of these keys, values and entries 127 00:06:46,580 --> 00:06:50,060 basically transformed the object into an array. 128 00:06:50,060 --> 00:06:53,600 And then here we have first the key 129 00:06:53,600 --> 00:06:56,090 and then then value. 130 00:06:56,090 --> 00:06:58,800 All right. And so now we can use this 131 00:06:58,800 --> 00:07:01,453 to basically loop over the object. 132 00:07:02,760 --> 00:07:06,533 So for, and now let's start by writing the of, 133 00:07:08,650 --> 00:07:11,933 we'll just call it X for now. Then we will take a look. 134 00:07:13,030 --> 00:07:14,720 So X of 135 00:07:15,710 --> 00:07:17,770 the entries that we just generated 136 00:07:19,050 --> 00:07:22,083 and then let's just log them to the console. 137 00:07:24,250 --> 00:07:26,700 And so let me get rid 138 00:07:27,700 --> 00:07:29,333 of this one here. 139 00:07:31,110 --> 00:07:33,780 All right. So that's weird. 140 00:07:33,780 --> 00:07:37,560 Oh, it's because of course I want to log X. 141 00:07:37,560 --> 00:07:39,820 Oh yeah, that's correct. 142 00:07:39,820 --> 00:07:44,240 So now we have each key and each value, all right. 143 00:07:44,240 --> 00:07:46,793 Now we want to print to the console, 144 00:07:48,846 --> 00:07:50,720 a string like this, 145 00:07:50,720 --> 00:07:53,260 so on the weekday. 146 00:07:53,260 --> 00:07:54,453 And so that is the key. 147 00:07:55,360 --> 00:07:57,980 And so I'm using these variables here, 148 00:07:57,980 --> 00:07:59,800 before I actually defined them. 149 00:07:59,800 --> 00:08:03,370 So to make it easier to say what we want to define. 150 00:08:03,370 --> 00:08:05,610 So for example, on Friday, 151 00:08:05,610 --> 00:08:08,083 we open at, 152 00:08:09,920 --> 00:08:13,610 and then we're going to have an open variable 153 00:08:13,610 --> 00:08:15,470 and close 154 00:08:15,470 --> 00:08:16,303 at 155 00:08:17,690 --> 00:08:19,040 close. 156 00:08:19,040 --> 00:08:21,350 So how will we do this? 157 00:08:21,350 --> 00:08:23,610 Well, just like we did with the arrays, 158 00:08:23,610 --> 00:08:26,203 we can use this structuring right here. 159 00:08:27,540 --> 00:08:28,933 So let's do that. 160 00:08:29,900 --> 00:08:31,810 The first one is the key. 161 00:08:31,810 --> 00:08:34,850 And remember the second one is the value. 162 00:08:34,850 --> 00:08:36,490 So we can do this, 163 00:08:36,490 --> 00:08:40,330 but we already know that this here is an object, right? 164 00:08:40,330 --> 00:08:44,180 And so therefore we can also immediately destructure 165 00:08:44,180 --> 00:08:45,323 that object here. 166 00:08:46,560 --> 00:08:48,193 So fair enough. 167 00:08:49,570 --> 00:08:51,053 Open and close. 168 00:08:51,950 --> 00:08:55,290 So the two variable names inside of that object 169 00:08:55,290 --> 00:08:56,620 are open and close. 170 00:08:56,620 --> 00:09:00,340 And so here we specify exactly these property names 171 00:09:00,340 --> 00:09:04,943 and so they get destructured and therefore this works. 172 00:09:05,800 --> 00:09:07,043 So let's see that again. 173 00:09:08,220 --> 00:09:11,550 And so, yeah, so this is here the value basically 174 00:09:11,550 --> 00:09:12,383 all of this. 175 00:09:13,530 --> 00:09:14,363 Right? 176 00:09:14,363 --> 00:09:17,620 And so here we have open and close. 177 00:09:17,620 --> 00:09:20,203 And so that's exactly what we defined here as well. 178 00:09:21,440 --> 00:09:24,610 And therefore, we then end up with the string here, 179 00:09:24,610 --> 00:09:27,490 which got all of the data out of the object 180 00:09:27,490 --> 00:09:30,440 into this nicely and neat string. 181 00:09:30,440 --> 00:09:32,030 Alright. 182 00:09:32,030 --> 00:09:33,770 So this part here is necessary 183 00:09:33,770 --> 00:09:37,720 because the value itself is also an object. 184 00:09:37,720 --> 00:09:41,660 But if you had a more simple object with a simpler value, 185 00:09:41,660 --> 00:09:43,890 then you would, of course only do this here 186 00:09:43,890 --> 00:09:48,090 as destructuring, just a key and a value. 187 00:09:48,090 --> 00:09:50,330 And of course you could then give them other names 188 00:09:50,330 --> 00:09:51,880 as you would like. 189 00:09:51,880 --> 00:09:53,983 So here we can just call them day. 190 00:09:54,960 --> 00:09:58,510 We can use any name that we want. Awesome. 191 00:09:58,510 --> 00:10:01,190 So we're doing great progress here 192 00:10:01,190 --> 00:10:04,260 and now it's time to practice that once more. 193 00:10:04,260 --> 00:10:06,993 So I see you in the next coding challenge. 13390

Can't find what you're looking for?
Get subtitles in any language from opensubtitles.com, and translate them here.