1
00:00:00,780 --> 00:00:01,860
歡迎回來。

2
00:00:01,860 --> 00:00:09,250
因此，在過去的幾年，我們的影片一直在談論JavaScript數組它們是我們在接下來的幾個視頻談了第一個數據結構。

3
00:00:09,270 --> 00:00:12,660
我們將介紹調用的對象一個諾特爾數據結構。

4
00:00:13,140 --> 00:00:16,070
因此，我們有，就像我們做了與陣列的兩個主要目標。

5
00:00:16,080 --> 00:00:20,070
我們首先要了解什麼是對象為什麼我們使用它們。

6
00:00:20,100 --> 00:00:21,900
他們如何比較到一個數組。

7
00:00:21,900 --> 00:00:26,350
然後第二個目標是怎麼做的，我們編寫使用JavaScript對象一些代碼。

8
00:00:26,790 --> 00:00:29,370
讓我們開始吧。

9
00:00:29,400 --> 00:00:31,470
所以這裡有一個假設的情況。

10
00:00:31,470 --> 00:00:35,730
假設我想一個人在JavaScript中的模型。

11
00:00:35,760 --> 00:00:38,850
每個人都有一個姓名和年齡以及一個城市。

12
00:00:38,850 --> 00:00:46,580
所以有很多的方法，我能做到這一點，我可以有三種不同的變量名年齡和城市，但隨後他們不是彼此相關。

13
00:00:46,590 --> 00:00:47,780
他們是完全獨立的。

14
00:00:47,970 --> 00:00:57,510
所以，如果我想將它們連接起來，我可以像我在這裡做使用數組變種人等於數組，其中第一項是名字辛迪。

15
00:00:57,600 --> 00:01:03,780
第二項是32歲和最後一個項目米蘇拉或城市。

16
00:01:03,780 --> 00:01:08,510
這是不是一個真正的偉大的使用數組，因為這個數據是不是一個真正的名單。

17
00:01:08,760 --> 00:01:16,440
是的，我們可以強制到一個數組，但它本身不適合於陣列，其中我們有經常有一個邏輯順序列表的格式。

18
00:01:16,530 --> 00:01:20,770
是不是真的有此邏輯順序訪問城市出這個數組。

19
00:01:21,000 --> 00:01:23,970
我需要寫人太支架。

20
00:01:24,270 --> 00:01:28,360
這要求我知道這個城市在索引了。

21
00:01:28,500 --> 00:01:36,530
所以，如果我不小心顛倒了順序，我不得不Traviss名前期指數0，但後來我混這兩個了。

22
00:01:36,540 --> 00:01:41,300
所以我不得不在索引1城市年齡在索引2。

23
00:01:41,520 --> 00:01:48,060
然後，如果我試圖訪問的人托架2我會得到的年齡，而不是城市。

24
00:01:48,060 --> 00:01:53,370
所以，這一切只是為了顯示數組並不是適用於所有情況的完美解決方案。

25
00:01:53,370 --> 00:01:58,040
有很多更好的數據結構，我們在這裡使用的是JavaScript對象。

26
00:01:58,110 --> 00:02:05,630
你可以看到一個例子到這裡，我們會採取怎樣的人數組名年齡，城市，把它變成一個JavaScript對象。

27
00:02:05,790 --> 00:02:10,820
你應該注意到的第一件事是，我們花括號而非方括號中的數組。

28
00:02:10,890 --> 00:02:15,470
下一個重要的部分是，在這個對象中的每個項目是一個鍵值對。

29
00:02:15,750 --> 00:02:21,050
因此，我們有一個屬性值Colan名。

30
00:02:21,180 --> 00:02:25,500
年齡是32城市米蘇拉。

31
00:02:25,500 --> 00:02:27,360
這張幻燈片顯示了同樣的事情。

32
00:02:27,450 --> 00:02:43,020
我們有一個不同的人對象變種人等於花括號並且我們在設置裡面的名字是特拉維斯年齡是在城市21是洛杉磯到這裡，我們對這個數據結構看起來像一個簡單的示意圖。

33
00:02:43,020 --> 00:02:53,690
我們在這個對象三個不同的插槽，需要注意的是對象沒有任何內置為了不像一個數組，其中有一個第一項和第二項和第三項是非常重要的。

34
00:02:53,700 --> 00:02:59,040
想想的項目，而不是一個給定的對象就在裡面，如果有沒有訂單浮動。

35
00:02:59,040 --> 00:03:05,600
沒有財產來自第一或第二不要緊我如何按照什麼順序他們都一視同仁宣布他們。

36
00:03:05,610 --> 00:03:10,180
所以這個圖顯示了他們的訂單，但是這只是因為我必須選擇一個訂單。

37
00:03:10,680 --> 00:03:14,620
所以你可以看到特拉維斯是關鍵名義存儲。

38
00:03:14,850 --> 00:03:17,220
21是存儲在密鑰未滿。

39
00:03:17,370 --> 00:03:23,190
而湖人存儲在重點城市中檢索出的數據的對象之下。

40
00:03:23,190 --> 00:03:24,970
我們有兩個選擇。

41
00:03:25,200 --> 00:03:31,800
我們既可以使用對象者方括號內的名稱，然後將密鑰的名稱。

42
00:03:32,130 --> 00:03:35,820
因此，在這種情況下，我越來越特拉維斯出來的人的對象。

43
00:03:35,820 --> 00:03:39,610
所以，我對人方括號在引號。

44
00:03:39,630 --> 00:03:41,620
所以這是非常相似的陣列。

45
00:03:41,670 --> 00:03:43,920
唯一不同的是，這不是一個號碼。

46
00:03:43,950 --> 00:03:45,890
這是一個字符串。

47
00:03:45,930 --> 00:03:51,140
另一種選擇是使用點號點號是有點短，更簡單。

48
00:03:51,150 --> 00:03:59,610
正確的人點和名稱具有明顯的鍵的名稱匹配，這也會給我們特拉維斯。

49
00:03:59,880 --> 00:04:02,320
我要繼續前進，證明在CON ..

50
00:04:02,340 --> 00:04:10,640
我要提出一個新的對象叫的狗和我的狗都將有一個屬性名一如既往。

51
00:04:10,740 --> 00:04:14,390
生鏽他是最好的狗，一半品種。

52
00:04:14,760 --> 00:04:22,140
他是一個傻子Lassally的年齡，他是三。

53
00:04:22,590 --> 00:04:24,720
所以這給了我我的對象的狗。

54
00:04:24,840 --> 00:04:28,350
如果我們在控制台中看看它，你可以看到它告訴我它是一個對象。

55
00:04:28,350 --> 00:04:32,180
你的名字是resti品種泥3歲。

56
00:04:32,190 --> 00:04:47,970
所以，如果我想訪問他的年齡出狗的對象，我可以做的第一件完整的狗，然後在報價年齡，他們得到三個或我可以做點狗的年齡，我也得到三個。

57
00:04:48,120 --> 00:04:50,190
這取決於你使用任何一個。

58
00:04:50,190 --> 00:04:53,100
我更願意用狗狗的年齡，因為它的短。

59
00:04:53,100 --> 00:04:54,380
您不必使用引號。

60
00:04:54,390 --> 00:04:56,570
你不需要兩邊雙括號。

61
00:04:56,700 --> 00:04:57,880
你只需要它。

62
00:04:58,350 --> 00:05:01,100
但也有在這張幻燈片上有一些差別。

63
00:05:01,110 --> 00:05:03,750
我演示了三個主要區別。

64
00:05:04,140 --> 00:05:08,850
因此，如果物業以數字開頭，你不能用點號。

65
00:05:08,850 --> 00:05:14,580
所以，你可以看到，在這裡DOT 1等等一些對象無效。

66
00:05:15,090 --> 00:05:23,040
但是，如果我有一個屬性調用一個胡說，我將不得不使用方括號，並把它放在引號，這只是它的成立在JavaScript的方式。

67
00:05:23,040 --> 00:05:31,450
我要跳下來這裡的第三個例子是，你不能使用點表示法，如果你的屬性名有類似最愛的顏色中有空格。

68
00:05:31,500 --> 00:05:33,240
顯然，這是行不通的。

69
00:05:33,240 --> 00:05:42,600
JavaScript的認為我們在訪問點最愛因此，如果我們想這是不是一個真正的好的做法反正空間屬性，但如果我們這樣做，我們將需要使用引號。

70
00:05:42,620 --> 00:05:43,130
最愛。

71
00:05:43,170 --> 00:05:46,150
用方括號空間的顏色。

72
00:05:46,890 --> 00:05:51,370
然後中間的例子表明，你可以使用一個變量查找的東西。

73
00:05:51,420 --> 00:05:53,160
如果你用括號標記。

74
00:05:53,370 --> 00:06:14,970
所以，如果我有一個變量在這裡叫字符串或TR而且這等於在引號，如果我嘗試做一些對象作為TR它只是將查找財產TR的名字，但如果我做了一些對象括號為TR這將評估為TR這讓我們在引號。

75
00:06:14,970 --> 00:06:19,560
因此，這會再看看在某些對象中的name屬性。

76
00:06:19,560 --> 00:06:22,290
所以這是我們居然會偶爾看到。

77
00:06:22,320 --> 00:06:24,040
所以它的價值在這裡認識的差異。

78
00:06:24,060 --> 00:06:29,700
您可以使用一個變量名來查找屬性使用方括號。

79
00:06:29,820 --> 00:06:34,140
我們要做的下一件事就是能夠物體內更新數據。

80
00:06:34,410 --> 00:06:40,190
所以這是非常相似的地方，我們訪問數據，然後用等號將其重新分配陣列。

81
00:06:40,470 --> 00:06:51,230
所以在這裡你可以看到，我們有我們一樣的人的對象名稱特拉維斯年齡是21歲城市是湖人如果我想添加一個Traviss年齡是他的生日。

82
00:06:51,450 --> 00:06:54,160
所有我需要做的是訪問的人的年齡。

83
00:06:54,570 --> 00:06:58,430
我可以用方括號或點號，然後重新分配。

84
00:06:58,560 --> 00:07:01,170
所以，人的年齡加上等於1。

85
00:07:01,710 --> 00:07:09,500
這樣會增加一個人的年齡是22，現在我還是可以用的人點城市，重新分配是倫敦。

86
00:07:09,660 --> 00:07:15,490
所以，人最多的城市倫敦等於現在將設置人擁有倫敦城市。

87
00:07:15,510 --> 00:07:16,990
因此，只要證明。

88
00:07:17,280 --> 00:07:22,200
讓我們再回到它有名字生鏽育種狗我們的狗對象。

89
00:07:22,230 --> 00:07:23,850
年齡是三。

90
00:07:23,880 --> 00:07:28,050
生鏽的僅僅過了一個生日，所以我要改變他的年齡的狗。

91
00:07:28,080 --> 00:07:36,260
年齡等於我可以做這一點等於四這只是要讓它四無事我可以看看狗什麼，。

92
00:07:36,930 --> 00:07:39,070
或者，我可以做狗。

93
00:07:39,150 --> 00:07:45,940
年齡加等於一，這將只需添加一個現有的年齡，這給了我們五位。

94
00:07:45,990 --> 00:07:49,180
我也將展示這樣做的方括號。

95
00:07:49,230 --> 00:07:53,110
比方說，我要改變生鏽的名字是他的綽號塔特。

96
00:07:53,450 --> 00:08:02,730
我會寫狗括號名稱，只是給我resti然後我會重新分配它是Tator。

97
00:08:03,120 --> 00:08:10,200
如果你看看狗，我們現在有一個名為Tator釋放5歲。

98
00:08:10,320 --> 00:08:19,540
有初始化，就像我們看到了一場比賽，所以我們可以做一個空的對象，像第一次我們這裡有對象的幾種不同的方式。

99
00:08:19,740 --> 00:08:24,560
瓦爾人等於空的大括號，然後我們可以在事後添加數據。

100
00:08:24,600 --> 00:08:26,240
同時一塊。

101
00:08:26,360 --> 00:08:37,040
人的名字是特拉維斯人士認為21歲的人的城市是洛杉磯，我們可以一次這是我們到目前為止看到被稱為對象的文字符號做這一切。

102
00:08:37,140 --> 00:08:51,260
到目前為止，人是平等的，那麼裡面的花括號我只是寫我的屬性的名稱特拉維斯年齡通話和21個城市Colan湖人，哪些是你不會看到很多時候，直到在JavaScript很久以後的最後途徑。

103
00:08:51,330 --> 00:08:59,740
他說，我可以使用新的對象，就像是一個新的數組，這將使我們的一個新的對象，並將其寄回給我們一個空對象的函數。

104
00:08:59,880 --> 00:09:03,570
然後，我可以親自城市增添人名人不是年齡。

105
00:09:03,810 --> 00:09:08,940
所以，你一定會看到這個語法和這種語法更經常現在。

106
00:09:08,940 --> 00:09:14,330
我想做出關於對象的另一點是，就像他們的陣列可以容納任何類型的數據。

107
00:09:14,610 --> 00:09:21,410
因此，我們的數據可以是數字或字符串或布爾數組，你可以在這裡看到，即使另一個對象。

108
00:09:21,630 --> 00:09:24,460
就像我們的陣列可以混合和匹配就像我們想。
