0:00
कभी भी java script में जब हम एक class बनाते हैं तो हम लोग constructor का
0:03
इस्तेमाल करते हैं और जो constructor होता है वो हमेशा invoke होता
0:08
है जब भी class का कोई object बनता है। चलते हैं computer screen में
0:11
इस concept को समझते हैं और देखते हैं किस तरह से आप लोग arguments pass करके
0:15
constructor को अपने objects को initialize कर सकते हैं। java script के अंदर
0:19
let's get started। तो guys मैंने यहाँ पर नई rapper बना ली
0:28
है constructor के लिए पिछले example जो कि मैंने आप लोगों को दिखाया था seventy
0:31
sixth video में उसमें हम लोगों ने देखा था एक class को कैसे बनाते हैं और हमने
0:35
एक class बनाई हुई थी और हमने जो example लिया था उसी की class बनाई थी। हमने railway
0:39
reservation की बात की थी। हमने कहा था एक form बट रहा है और उस form
0:42
के अंदर कुछ fields हैं कुछ place holders हैं और वो आप
0:46
भर देते हो। तो object बन जाता है और वो form generic form एक class
0:50
है। ठीक है? इतनी बात हमने हुई थी सबने समझा सबको लगा
0:53
आगे की कहानी क्या है यार ये तो बताओ तो मैं आगे की कहानी में क्या
0:57
कर रहा हूं कि seventy six example को पूरा का पूरा छाप रहा हूं। हाँ भाई छाप रहा हूं
1:01
हाँ भाई छापना बुरा नहीं होता है। देखो copy paste करना बुरी बात नहीं है
1:04
गलत तरीके से गलत को। मतलब गलत तरीके से किसी की को
1:09
copy paste करना गलत है ठीक है अपनी को देखो मैंने copy paste किया तो ये smart
1:12
work होता है ठीक है तो copy paste गलत नहीं है आप किसकी
1:16
copy कर रहे हो कहाँ से ला रहे हो उसको क्या नुकसान दे रहे हो। वो वो
1:20
सबसे है ठीक है तो मैं यहां पर किसी को नुकसान नहीं दे रहा हूँ अपना ही code copy कर रहा हूँ। तो
1:24
हमने कहा था कि यार एक form हैरी भर रहा है एक form रोहन भर रहा है
1:27
और हमने दो methods बनाए हमने कहा एक railway form है और
1:31
उसमें fill कर सकते हैं हम या तो हम उसको cancel कर सकते हैं और submit भी कर
1:35
सकते हैं। fill में हमने कहा था की details को fill करेंगे। अब एक use
1:39
case आपको दिखाता हूँ। Harry का form हमने create किया हमने मान
1:43
लोम for some reason fill करना भूल गए मैं नहीं करता ठीक है और मैंने
1:47
रोहन के भी दोनों forms बना लिए और मैं fill करना भूल गया मैंने fill ही नहीं किए forms
1:51
और submit कर दिया। तो अगर मैं submit कर देता हूँ बिना fill किए। तो
1:55
क्या होगा और cancel भी कर देता हूँ खाली form को तो ये तो कोई sense
1:58
बना नहीं रहा है कि आपने एक railway reservation का form भरा और
2:02
वो आप fill करना चाह रहे हो तो देखो ये अजीब सी हरकत करने लग गई हमारी
2:06
website undefined your form is submitted for train number undefined। ठीक है
2:11
और okay okay okay okay okay okay चले जा रहा हूँ मैं यहाँ पर और ये
2:15
पता नहीं क्यों बार बार चले जा रहा है। आह तो यहाँ पर basically
2:18
क्या हुआ दो बार चला basically तीन बार चला मैंने एक बार तो दो
2:22
बार cancel के लिए चला तीन बार submit के लिए चला दो बार cancel
2:26
के लिए चला ठीक है ये तीन बार submit के लिए एक बार cancel के लिए ठीक है। तो
2:30
अब इसका क्या solution है? देखो ये problem solve तो की जा सकती है
2:33
आप कुछ ऐसा कर सकते हो आप कहोगे कि यार मैं यहाँ पे check कर लूँगा कि
2:38
यह undefined तो नहीं है या फिर error handling use कर लूँगा। बहुत सारी
2:41
चीजें आपके दिमाग में आएँगी लेकिन हम use करते हैं constructor का। हम
2:45
यार classes को बना रहे हैं अपनी जिंदगियों को आसान बनाने के लिए मुश्किल करने के
2:48
लिए ना बना रहे हैं। Classes and objects इसलिए ना आए कि आप लोगों को परेशानी हो सीखने
2:52
में। या मुझे परेशानी हो आपको सिखाने में ठीक है। आपकी problem
2:56
मेरी problem यार ठीक है तो यहां पर हम क्या करेंगे submit, cancel
3:01
fill ये तीन methods ऐसे के ऐसे ही रहेंगे। हम कहेंगे यार एक यहां
3:04
पर और method आएगा जिसका नाम है constructor। अब मैं अगर यहां
3:08
पर console dot log करूंगा मैं यहां पर लिख दूंगा constructor called
3:12
ठीक है तो ये क्या करेगा देखते हैं इसको मैंने save कर दिया
3:16
called। अच्छा वो देख लिया नहीं तो comment आते हैं cold की
3:21
spelling भी नहीं आती ठीक है तो reload करूंगा मैं इसको और देखो constructor
3:25
तीन बार call हुआ और ये जो हमारा alert होता है ना वो blocking
3:29
होता है। तो जब मैं okay करूंगा okay करूंगा okay okay करता रहूंगा
3:32
उसके बाद नीचे का code चलेगा ठीक है तो मैं यहां पर okay कर रहा हूं इसको भी okay
3:36
किया मैंने। तीन बार constructor हमारा call हुआ। तो constructor बहुत simple सी है
3:40
constructor हमेशा call होता है जब भी आप अपने किसी भी class
3:45
का object बनाते हो। अब अगर railway form class का कोई भी object बनेगा
3:49
कुछ हो या ना हो ये जरूर चलेगा। इसको चलाएगा कौन क्या मुझे dot constructor
3:53
लिखना नहीं नहीं लिखना यही beauty है। तो constructor का मतलब वो
3:58
method जो हमेशा चलता है जब भी object को बनाया जाता है। simple सी बात
4:01
है notes में आ जाओ। the constructor method is called automatically by
4:06
new so we can initialize the object there ठीक है हम क्या
4:10
करेंगे कि एक नया object बना लेंगे और जैसे ही वो नया
4:15
object बनेगा जैसे की मैंने अगर यहाँ पर ये object बनाया है
4:19
new railway form constructor automatically call हो गया ठीक है। अगर मान
4:24
लो मैं constructor में ये काम करना चाहता हूँ ये जो मैं fill है मैं कहता
4:27
हूँ यार मैं fill को खत्म करना चाहता हूँ। मुझे मैंने ये जो काम
4:31
किया है fill के अंदर ही मैं fill में करना ही नहीं चाहता मैं करना चाहता हूं ये काम
4:35
कहाँ पर constructor के अंदर ठीक है और मैं ये console dot log
4:38
line भी इसके अंदर ले जाता हूँ और ये fill हटा देता हूँ मैंने fill method जो है खत्म ही कर दिया
4:42
मैंने कहा यार fill नहीं चाहिए। हम करेंगे constructor में ही सीधा
4:45
का सीधा काम तो मुझे अलग से form को fill करने की जरूरत नहीं है मैं इसको reload
4:49
करूँगा तो ये जो constructor है वो हमेशा call होगा तो यहाँ
4:53
पर आप देखो मैंने Harry और ये लिख दिया तो इसके साथ call होगा अगर मैं इसको ऐसे ही चला
4:56
दूंगा तब ये दोनों values यहाँ पर नहीं मिल पाएंगी तो मैं एक काम करता हूँ constructor called
5:00
करता हूँ और यहाँ पर मैं plus करता हूँ given name। ठीक
5:05
है और train number ठीक है ये दोनों चीजें मैं लिखता हूं
5:09
और एक और करूंगा यहां पर एक space भी दे दूंगा ठीक
5:12
है और अभी मैं अगर reload करूँ। और ना मैं ये alert
5:17
calls annoying लग रही है मुझे। मैं इनको हटा गया देखो undefined undefined आ गया
5:21
यहाँ पर ठीक है तो undefined undefined आ जाएगा अगर आपने नहीं pass किया argument
5:24
तो और error क्यों नहीं आया undefined undefined क्यों आया क्योंकि देखो
5:29
java script का काम है browser पर run होना। और java script कोशिश
5:32
ये करती है आपको error ना दे कोशिश ये करती है java script हमेशा
5:36
की आपका code चले ठीक है तो इसलिए यहां पर ये इस
5:40
तरह की behaviour आप लोग को देखने को मिलता है तो मैं क्या करूंगा की ये जो
5:43
मैं पहले fill के through कर रहा था वो अब constructor के through करूँगा ठीक है
5:48
तो अब यहां पर देखो मैं इसको cut करके यहां पर ले आऊंगा और मुझे explicitly
5:52
fill करने की जरुरत नहीं है ठीक है मैं इसको हटा दूंगा
5:55
create and fill कर दूंगा इसको मैं। create and fill। ठीक है
6:03
और मैं यहां पर लिख देता हूं no need to। ये करने
6:07
की कोई जरूरत नहीं है आपको हैरी की details जो है इस तरह से
6:11
fill करने की कोई जरूरत नहीं है ठीक है तो ये काम मैंने कर दिया
6:15
और अब आप लोग देखो यहां पर जैसे मैं इसको reload करूंगा तो यहां पर देखो
6:18
हरी फिर रोहन train number भी आ गया, रोहन train number भी
6:22
आ गया ठीक है तो this form is cancelled for train number this तो
6:26
ये की जा सकती है। अब अगर आप लोग ये चाहते हो की एक इंसान
6:30
की एक train बने वो भी आप कर सकते हो तो मैं अब आप लोग को दिखाता हूँ की ये काम
6:33
कैसे किया जाएगा तो मैं सबसे पहले तो चाहता हूँ की ये code ऐसे के ऐसे
6:37
ही रहे तो मैं एक नयी file बनाऊंगा और उसका नाम रखूंगा script
6:41
two dot JS rather मैं एक काम करूँगा इस पुरानी file का नाम script
6:44
hold कर दूंगा ताकि आप लोगों को code मिला रहे ठीक है। मैं नहीं चाहता की
6:48
ये मैं delete कर दूँ और फिर आप लोगों को दिक्कत हो। मैंने script told
6:52
के नाम से ही रख दिया और आप लोग अगर follow कर रहे होंगे codes तो आपको पता होगा script
6:55
told में क्या लिखा है और script में क्या लिखा है ठीक है। और script में
6:59
अब मैं एक नया पूरा का पूरा ताम जाम बना रहा हूं नया तामजाम
7:03
मतलब मतलब की एक नई class बनाऊंगा और पूरा ना इसको सा change
7:06
कर दूंगा organise कर दूंगा ठीक है जैसे की हमने बात की ना अभी की
7:10
मैं इसको। ऐसे कर दूंगा। railway form मैंने बनाया मैंने कहा constructor
7:16
जो क्या करेगा given name और एक train number given name और
7:19
train number के साथ एक तो नाम जो है वो set कर
7:23
देगा उस इंसान का जिसने भी form भरा है और इसके बाद
7:27
train number जो है वो आ जाएगी इसकी ठीक है। फिर इसके बाद
7:31
उसका address आ जाएगा let us say ADD कर देता हूं। और
7:35
मेरी मर्जी में पूरा address भी लिख सकता हूँ ऐसी कोई बात नहीं है लेकिन फिर यहाँ भी मुझे address लिखना
7:40
और ये सारी details देने के बाद मैं चाहूँगा की अगर कोई
7:43
भी इंसान cancel करता है train अपनी तो उसका जो train number
7:48
है वो undefined हो जाए या फिर train number zero हो जाए। ठीक है? ये
7:51
हमारा convention है की अगर कोई भी cancel करता है तो train number zero हो जाए
7:55
और ये हम convention रख सकते हैं। अब train number उसका zero हो गया क्योंकि
7:59
कोई भी train नहीं है उसको allocated। और उसी के साथ साथ
8:04
name उसका नहीं बदलेगा address उसका नहीं बदलेगा ठीक है। मान लो मैं this
8:07
dot time भी कर देता हूं यानि की जो train का departure time है वो आ
8:11
जाए यहां पर और वो भी मैं यहां पर दे सकता हूं
8:15
ठीक है? तो time आप किस time देखना चाहते हो या फिर form में हम क्योंकि time नहीं
8:19
भरते हैं इसलिए मैं इसको हटा देता हूं मतलब form में जो भी fields है वो आप इस तरह से लिख सकते हो। अब
8:22
देखो मान लो की मैं लिखता हूं let H is equal to new
8:27
railway form और कभी भी ऐसे नहीं लिखना है H पूरा लिखो
8:32
क्यों लिखोगे पूरा जब यार code हो जाएगा ना आपका तब आपको पता चलेगा कि यार जब आपके
8:36
पास इस तरह के सत्रह सत्रह variables होंगे ABCD के नाम से। मैंने
8:40
इतने code basis में काम किया हुआ है कि Z तक भी variables हो
8:43
जाए अगर ABCD डालना शुरू कर दिया तो। तो इसलिए नाम लिखोगे क्या
8:47
क्या है ये क्या है ये एक form है किसका form है हैरी का form है
8:51
तो इसको harry form करके लिखो ठीक है और इसको बनाया मैंने railway
8:54
form से और मैं यहाँ पर सारी दूंगा एक तो name दे दूंगा
8:58
ठीक है और मैं कुछ इस तरह से fill करूँगा harry train
9:02
number में मान लो one three four eight eight ठीक है तीसरा argument क्या ले रहा है
9:06
मेरा constructor address ले रहा है तो मैं यहाँ पर अपना address लिख देता हूँ आह
9:10
क्या है मेरा address मेरा address है आह। मेरा address है one
9:17
four two zero। pacific ocean ocean Bihar ठीक
9:26
है। ये मेरा pin code है double zero triple zero five five
9:31
five। ठीक है ये मेरा pin code है ये मेरा address है ठीक है ये मैंने लिख दिया है यहाँ पर
9:35
और मैं क्या करूंगा यहां पर अब ये मेरा form बन चूका है। अब
9:39
मैं इस form को submit करूँगा और मैंने अलग method क्यों बनाया है submit
9:43
का submit को भी constructor में क्यों नहीं घुसा दिया क्योंकि may be आप इसको
9:47
एक इसको preview भी करना चाहे ठीक है? preview भी करना चाहे एक method
9:50
आप बनाना चाहे जिससे की आप preview करेंगे इसको तो आप एक preview
9:54
नाम का। जो method है वो आप लगाओगे यहां पर और जब
9:59
preview करोगे आप तो यहां पर आपको ये देखने को मिलेगा your form
10:04
your form is for train number। और यहां पर मैं blush लगाकर
10:11
लिख दूंगा and your address is और यहां पर this dot address
10:19
ठीक है ये कुछ इस तरह से कर देंगे तो this dot
10:24
ये preview हो गया ये submit हो गया cancel हो गया ठीक है तो constructor
10:29
preview submit cancel ठीक है ये मैंने methods लिखे तो अब मैं
10:34
harry form dot preview करूँगा अब by the way मैं आपको बता दूँ
10:37
इस index dot HTML में ये script dot JS added है ठीक है ये script dot JS added
10:41
है इसलिए मैं reload करूँगा तो ये वाली script चलेगी पुरानी नहीं चलेगी। देखो यहाँ पर मैंने
10:44
preview किया तो यहाँ पर आ गया Harry your form is for train number one three four double
10:48
eight and your address is चार सौ बीस pacific ocean ocean बिहार। pin
10:52
code मेरा ठीक है मैं okay कर दूंगा तो ये मैंने preview method बना दिया। अब
10:56
मान लो मैं चाहता हूं। Harry form dot और मान लो मैं
11:02
multiple trains को book करना चाहता हूं तो मैं train को एक array भी बना सकता हूं मतलब sky
11:06
is the limit sky is the limit ठीक है। मैं कुछ ऐसे भी कर सकता हूं और मैं add
11:10
train method बना सकता हूँ जो की push करेगी इस array के अंदर तो कई काम किए
11:13
जा सकते हैं मैं बस ये बता रहा हूं फिर अगर मैं submit कर दूंगा तो
11:17
मेरा ये submit वाला method call हो जाएगा cancel कर दूंगा तो
11:21
cancel वाला method call हो जाएगा ठीक है तो मैं अगर harry form
11:25
dot cancel करके। Harry form dot preview करूँ दोबारा से और मैं
11:31
मैं क्या कर रहा हूँ पहले preview कर रहा हूं submit कर रहा हूँ फिर cancel कर रहा हूं दोबारा preview
11:35
कर रहा हूं ठीक है? तो, ये देखो इस तरह से मैं
11:40
इसको reload किया ये मेरा form आ गया ठीक है। फिर इसके
11:43
बाद your form submitted for train number this। फिर this form is
11:47
cancelled for train number this। फिर देखो your form is for train number
11:51
zero and your address is this क्योंकि मैंने reset किया था zero का मतलब
11:54
कि अभी कोई allocated नहीं है train मुझे। तो मैं okay कर दूँगा यहाँ पर तो इस तरह
11:58
से constructor काम करता है hope की आप लोग समझ गए constructor क्या है और किस
12:02
तरह से इस्तेमाल करना है java script के अंदर बहुत सारे ins and doubts होते
12:05
हैं बहुत सारी advance हैं और उसके लिए आप MDN docs सकते
12:10
हो ठीक है MDN जो java script के official docs है mozilla
12:13
dot ORG पर वो आप सकते हो। ठीक है? और जैसे मान
12:18
लो मैंने instructor लिखा है median dogs के बाद तो मुझे यहाँ
12:21
पर ये सारी की सारी जानकारियाँ मिल जाएंगी। अब इसके बारे में मैं सकता हूँ। मुझे
12:25
basics पता है। मुझे पता है जब कोई prototype बोल रहा है तो इसका क्या मतलब है। तो
12:29
यहाँ से मैं देख सकता हूँ देखो इन्होंने भी ये सारी बातें बताई हुई हैं examples हैं और
12:33
आप इस तरह से जो है लिख सकते हैं arguments अलग अलग arguments से constructor
12:37
बना सकते हैं। ये सारी चीजें हैं। ठीक है। I hope की आप लोग समझ गए इस को। अब
12:41
एक बात और है देखो इसमें यहाँ पर लिखा हुआ है कि if you don't provide your own constructor then a
12:44
default constructor will be supplied for you और वो इस तरह से दिखेगा एक default constructor
12:49
ठीक है? और अगर आपने एक derived class बना रखी है तो उसका
12:52
constructor कुछ ऐसा दिखेगा। हम लोग super keyword के बारे में भी but मैं just आपको बता
12:56
रहा हूँ की अगर आप लोग अपनी knowledge को और expand करना
13:00
चाहते हो तो आपको कहाँ जाना है और उसके बाद वहां से भी अगर आप लोग और expand करना चाहते हो तो काम
13:03
करते रहो websites बनाते रहो। और update होती हैं। नए नए specifications
13:07
आएंगे नई नई आएँगे आपको कोई बताएगा की भाई constructor को ऐसे भी बनाया जा
13:11
सकता है। who knows की कुछ ऐसा हो जाए की यार constructor को बनाने के लिए आपको ये सब
13:15
करने की जरुरत नहीं है आप may be कुछ और कर लो ठीक है change होती रहती
13:18
है लोगों की जिंदगी को आसान बनाने के लिए changes बहुत जरुरी
13:23
हैं और आते भी रहते हैं। तो उन changes के साथ भी आपको रहना है। ठीक है। ये
13:26
सारे जो मैं बता रहा हूँ अभी। ये basic से भी सा ऊपर है मतलब मैं
13:30
तो ये कहूँगा ये quotes जो मैं बता रहा हूँ इसमें सारे topics covered है A to Z
13:34
ठीक है? तो with that said मैं अगले video में आपको class inheritance
13:38
के बारे में बताऊंगा की extend keyword का इस्तेमाल कैसे करना है और
13:42
अगर आप किसी भी base class से। बनाना चाहते हो derived class वो कैसे बनाना
13:46
है तो अगले video में देखेंगे inheritance extense keyword और कैसे एक
13:50
class से दूसरी class बनाई जाती है ठीक है so अभी के लिए इस video में इतने हैं guys thank
13:54
you so much guys for watching this video playlist को जरूर access करना है and I will