|
47 | 47 |
|
48 | 48 | जावास्क्रिप्ट की क्षमताएं बहुत हद तक उस वातावरण पर निर्भर करती हैं, जिसमें वह चल रहा है. उदाहरण के लिए, [Node.js] (https://wikipedia.org/wiki/Node.js) ऐसे कार्यों का समर्थन करता है जो जावास्क्रिप्ट को मनमाने ढंग से फाइल पढ़ने / लिखने, नेटवर्क अनुरोध करने, आदि की अनुमति देता है।
|
49 | 49 |
|
50 |
| -In-browser JavaScript can do everything related to webpage manipulation, interaction with the user, and the webserver. |
| 50 | +इन-ब्राउज़र जावास्क्रिप्ट वेबपेज हेरफेर, उपयोगकर्ता के साथ बातचीत और वेबसर्वर से संबंधित सब कुछ कर सकता है। |
51 | 51 |
|
52 |
| -For instance, in-browser JavaScript is able to: |
| 52 | +उदाहरण के लिए, इन-ब्राउज़र जावास्क्रिप्ट सक्षम है: |
53 | 53 |
|
54 |
| -- Add new HTML to the page, change the existing content, modify styles. |
55 |
| -- React to user actions, run on mouse clicks, pointer movements, key presses. |
56 |
| -- Send requests over the network to remote servers, download and upload files (so-called [AJAX](https://en.wikipedia.org/wiki/Ajax_(programming)) and [COMET](https://en.wikipedia.org/wiki/Comet_(programming)) technologies). |
57 |
| -- Get and set cookies, ask questions to the visitor, show messages. |
58 |
| -- Remember the data on the client-side ("local storage"). |
| 54 | +- पेज को नया HTML जोड़ने के लिए, मौजूदा सामग्री को बदलने के लिए, शैलियों को संशोधित करने के लिए। |
| 55 | +- उपयोगकर्ता क्रियाओं पर प्रतिक्रिया करने के लिए, माउस प्रेस पर चलाने के लिए, पॉइंटर आंदोलनों पर, कुंजी प्रेस पर। |
| 56 | +- फ़ाइलों को डाउनलोड करने और अपलोड करने के लिए दूरस्थ सर्वरों के लिए नेटवर्क पर अनुरोध भेजने के लिए (तथाकथित [AJAX](https://en.wikipedia.org/wiki/Ajax_(programming)) और [COMET](https://en.wikipedia.org/wiki/Comet_(programming)) टैकनोलजी). |
| 57 | +- कुकीज़ प्राप्त करने और सेट करने के लिए, आगंतुक से सवाल पूछने के लिए, संदेश दिखाने के लिए। |
| 58 | +- क्लाइंट-साइड पर डेटा याद रखना ("local storage", ब्राउज़र पर डेटा स्टोर करने की एक तकनीक). |
59 | 59 |
|
60 |
| -## What CAN'T in-browser JavaScript do? |
| 60 | +## ब्राउज़र जावास्क्रिप्ट क्या नहीं कर सकता? |
61 | 61 |
|
62 |
| -JavaScript's abilities in the browser are limited for the sake of the user's safety. The aim is to prevent an evil webpage from accessing private information or harming the user's data. |
| 62 | +ब्राउज़र में जावास्क्रिप्ट की क्षमताएं उपयोगकर्ता की सुरक्षा के लिए सीमित हैं। उद्देश्य एक बुरे वेबपृष्ठ को निजी जानकारी तक पहुँचने या उपयोगकर्ता के डेटा को नुकसान पहुँचाने से रोकना है। |
63 | 63 |
|
64 |
| -Examples of such restrictions include: |
| 64 | +ऐसे प्रतिबंधों के उदाहरणों में शामिल हैं: |
65 | 65 |
|
66 |
| -- JavaScript on a webpage may not read/write arbitrary files on the hard disk, copy them or execute programs. It has no direct access to OS functions. |
| 66 | +- एक वेबपेज पर जावास्क्रिप्ट हार्ड डिस्क पर मनमानी फाइलों को नहीं पढ़ / लिख सकता है, उन्हें कॉपी या प्रोग्राम निष्पादित नहीं कर सकता है। ऑपरेटिंग सिस्टम फ़ंक्शंस (OS functions) पर इसकी कोई सीधी पहुंच नहीं है। |
67 | 67 |
|
68 |
| - Modern browsers allow it to work with files, but the access is limited and only provided if the user does certain actions, like "dropping" a file into a browser window or selecting it via an `<input>` tag. |
| 68 | + आधुनिक ब्राउज़र इसे फ़ाइलों के साथ काम करने की अनुमति देता है, लेकिन पहुंच सीमित है और केवल तभी प्रदान की जाती है जब उपयोगकर्ता कुछ कार्य करता है, जैसे किसी फ़ाइल को ब्राउज़र विंडो में "ड्रॉप करना" या <input> ('इनपुट') टैग के माध्यम से चुनना। |
69 | 69 |
|
70 |
| - There are ways to interact with camera/microphone and other devices, but they require a user's explicit permission. So a JavaScript-enabled page may not sneakily enable a web-camera, observe the surroundings and send the information to the [NSA](https://en.wikipedia.org/wiki/National_Security_Agency). |
71 |
| -- Different tabs/windows generally do not know about each other. Sometimes they do, for example when one window uses JavaScript to open the other one. But even in this case, JavaScript from one page may not access the other if they come from different sites (from a different domain, protocol or port). |
| 70 | + कैमरा / माइक्रोफोन और अन्य उपकरणों के साथ बातचीत करने के तरीके हैं, लेकिन उन्हें उपयोगकर्ता की स्पष्ट अनुमति की आवश्यकता होती है। इसलिए एक जावास्क्रिप्ट-सक्षम पेज वेब-कैमरा को चुपके से सक्षम नहीं कर सकता है, परिवेश का निरीक्षण नहीं कर सकता है और [एनएसए] (https://en.wikipedia.org/wiki/National_Security_Agency) को जानकारी नहीं भेज सकता है। |
| 71 | +- विभिन्न टैब / विंडो आमतौर पर एक-दूसरे के बारे में नहीं जानते हैं। कभी-कभी वे जानते हैं, उदाहरण के लिए जब एक window दूसरे को खोलने के लिए जावास्क्रिप्ट का उपयोग करती है। लेकिन इस मामले में भी, एक पृष्ठ से जावास्क्रिप्ट दूसरे तक नहीं पहुंच सकता है यदि वे विभिन्न साइटों (एक अलग डोमेन, प्रोटोकॉल या पोर्ट से) से आते हैं। |
72 | 72 |
|
73 |
| - This is called the "Same Origin Policy". To work around that, *both pages* must agree for data exchange and contain a special JavaScript code that handles it. We'll cover that in the tutorial. |
| 73 | + इसे "Same Origin Policy" ("समान उत्पत्ति नीति") कहा जाता है। उस के आसपास काम करने के लिए, * दोनों पृष्ठों * को डेटा एक्सचेंज के लिए सहमत होना चाहिए और इसमें एक विशेष जावास्क्रिप्ट कोड होना चाहिए जो इसे संभालता है। हम इसे बाद में ट्यूटोरियल में पढ़ेंगे। |
74 | 74 |
|
75 |
| - This limitation is, again, for the user's safety. A page from `http://anysite.com` which a user has opened must not be able to access another browser tab with the URL `http://gmail.com` and steal information from there. |
76 |
| -- JavaScript can easily communicate over the net to the server where the current page came from. But its ability to receive data from other sites/domains is crippled. Though possible, it requires explicit agreement (expressed in HTTP headers) from the remote side. Once again, that's a safety limitation. |
| 75 | + यह सीमा फिर से, उपयोगकर्ता की सुरक्षा के लिए है। `Http: // anysite.com` का एक पृष्ठ, जिसे एक उपयोगकर्ता ने खोला है, वह URL` http: // gmail.com` के साथ दूसरे ब्राउज़र टैब तक पहुँचने में सक्षम नहीं होना चाहिए और वहाँ से जानकारी चुराने में सक्षम नहीं होना चाहिए। |
| 76 | +- जावास्क्रिप्ट आसानी से नेट से उस सर्वर से संपर्क कर सकती है जहां से वर्तमान पृष्ठ आया था। लेकिन अन्य साइटों / डोमेन से डेटा प्राप्त करने की इसकी क्षमता अपंग है। यद्यपि यह संभव है, इसके लिए सुदूर पक्ष से स्पष्ट सहमति (HTTP हेडर में व्यक्त) की आवश्यकता होती है। एक बार फिर, यह एक सुरक्षा सीमा है। |
77 | 77 |
|
78 | 78 | 
|
79 | 79 |
|
80 |
| -Such limits do not exist if JavaScript is used outside of the browser, for example on a server. Modern browsers also allow plugin/extensions which may ask for extended permissions. |
| 80 | +यदि ब्राउज़र के बाहर जावास्क्रिप्ट का उपयोग किया जाता है तो ऐसी सीमाएँ मौजूद नहीं हैं, उदाहरण के लिए किसी सर्वर पर। आधुनिक ब्राउज़र भी प्लगइन / एक्सटेंशन की अनुमति देते हैं जो विस्तारित अनुमतियों के लिए पूछ सकते हैं। |
81 | 81 |
|
82 |
| -## What makes JavaScript unique? |
| 82 | +## क्या जावास्क्रिप्ट को अद्वितीय बनाता है? |
83 | 83 |
|
84 |
| -There are at least *three* great things about JavaScript: |
| 84 | +जावास्क्रिप्ट के बारे में कम से कम * तीन * महान बातें हैं: |
85 | 85 |
|
86 | 86 | ```compare
|
87 |
| -+ Full integration with HTML/CSS. |
88 |
| -+ Simple things are done simply. |
89 |
| -+ Support by all major browsers and enabled by default. |
| 87 | ++ HTML / CSS के साथ पूर्ण एकीकरण (integration)। |
| 88 | ++ साधारण चीजें सरल तरीके से की जाती हैं. |
| 89 | ++ सभी प्रमुख ब्राउज़रों द्वारा समर्थन और डिफ़ॉल्ट रूप से सक्षम. |
90 | 90 | ```
|
91 |
| -JavaScript is the only browser technology that combines these three things. |
| 91 | +जावास्क्रिप्ट इकलौता ब्राउज़र तकनीक है जो इन तीन चीजों को जोड़ती है। |
92 | 92 |
|
93 |
| -That's what makes JavaScript unique. That's why it's the most widespread tool for creating browser interfaces. |
| 93 | +यही जावास्क्रिप्ट को अद्वितीय बनाता है। यही कारण है कि यह ब्राउज़र इंटरफेस बनाने के लिए सबसे व्यापक उपकरण है। |
94 | 94 |
|
95 |
| -That said, JavaScript also allows to create servers, mobile applications, etc. |
| 95 | +आजकल, जावास्क्रिप्ट का उपयोग सर्वर, मोबाइल एप्लिकेशन आदि बनाने के लिए भी किया जाता है। |
96 | 96 |
|
97 |
| -## Languages "over" JavaScript |
| 97 | +## जावास्क्रिप्ट के ऊपर निर्मित भाषाएँ |
98 | 98 |
|
99 |
| -The syntax of JavaScript does not suit everyone's needs. Different people want different features. |
| 99 | +जावास्क्रिप्ट का सिंटैक्स सभी की आवश्यकताओं के अनुरूप नहीं है। अलग-अलग लोग अलग-अलग सुविधाएँ चाहते हैं। |
100 | 100 |
|
101 |
| -That's to be expected, because projects and requirements are different for everyone. |
| 101 | +इसकी उम्मीद की जानी चाहिए, क्योंकि परियोजनाएं और आवश्यकताएं सभी के लिए अलग-अलग हैं। |
102 | 102 |
|
103 |
| -So recently a plethora of new languages appeared, which are *transpiled* (converted) to JavaScript before they run in the browser. |
| 103 | +इसलिए हाल ही में नई भाषाओं का ढेर दिखाई दिया जा रहा है, जो ब्राउज़र में चलने से पहले जावास्क्रिप्ट में *रूपांतरित* (transpiled) होते हैं। |
104 | 104 |
|
105 |
| -Modern tools make the transpilation very fast and transparent, actually allowing developers to code in another language and auto-converting it "under the hood". |
| 105 | +आधुनिक उपकरण परिवर्तनों को बहुत तेज और पारदर्शी बनाते हैं, वास्तव में डेवलपर्स को किसी अन्य भाषा में कोड करने की अनुमति देता है और उसे अंदर से परिवर्तित करता है। |
106 | 106 |
|
107 |
| -Examples of such languages: |
| 107 | +ऐसी भाषाओं के उदाहरण: |
108 | 108 |
|
109 |
| -- [CoffeeScript](http://coffeescript.org/) is a "syntactic sugar" for JavaScript. It introduces shorter syntax, allowing us to write clearer and more precise code. Usually, Ruby devs like it. |
110 |
| -- [TypeScript](http://www.typescriptlang.org/) is concentrated on adding "strict data typing" to simplify the development and support of complex systems. It is developed by Microsoft. |
111 |
| -- [Flow](http://flow.org/) also adds data typing, but in a different way. Developed by Facebook. |
112 |
| -- [Dart](https://www.dartlang.org/) is a standalone language that has its own engine that runs in non-browser environments (like mobile apps), but also can be transpiled to JavaScript. Developed by Google. |
113 |
| - |
114 |
| -There are more. Of course, even if we use one of transpiled languages, we should also know JavaScript to really understand what we're doing. |
| 109 | +- [CoffeeScript](http://coffeescript.org/) यह जावास्क्रिप्ट के लिए "सिंटैक्टिक शुगर" है। यह छोटे वाक्यविन्यास का परिचय देता है, जिससे हमें स्पष्ट और अधिक सटीक कोड लिखने की अनुमति मिलती है। आमतौर पर, Ruby (रूबी) डेवलपर इसे पसंद करते हैं। |
| 110 | +- [TypeScript](http://www.typescriptlang.org/) यह जटिल प्रणालियों के विकास और समर्थन को आसान बनाने के लिए "सख्त डेटा टाइपिंग" को जोड़ने पर केंद्रित है। यह Microsoft द्वारा विकसित किया गया है। |
| 111 | +- [Flow](http://flow.org/) यह डेटा टाइपिंग भी जोड़ता है, लेकिन एक अलग तरीके से। Facebook द्वारा विकसित। |
| 112 | +- [Dart](https://www.dartlang.org/) यह एक स्वतंत्र भाषा है जिसका अपना इंजन है जो गैर-ब्राउज़र वातावरण (जैसे मोबाइल ऐप) में चलता है, लेकिन इसे जावास्क्रिप्ट पर भी रूपांतरित किया जा सकता है। Google द्वारा विकसित किया गया। |
| 113 | +और भी कई हैं। बेशक, भले ही हम रूपांतरित भाषाओं में से एक का उपयोग करें, हमें यह भी जानना चाहिए कि हम वास्तव में क्या कर रहे हैं, यह समझने के लिए जावास्क्रिप्ट जानना महत्वपूर्ण है। |
115 | 114 |
|
116 | 115 | ## सारांश
|
117 | 116 |
|
118 | 117 | - जावास्क्रिप्ट को शुरुआत में केवल ब्राउज़र-भाषा के रूप में बनाया गया था, लेकिन अब इसे कई अन्य वातावरणों में भी उपयोग किया जाता है।
|
119 | 118 | - आज, जावास्क्रिप्ट HTML / CSS के साथ पूर्ण एकीकरण के साथ सबसे व्यापक रूप से अपनाया जाने वाला एक अद्वितीय ब्राउज़र-भाषा है।
|
120 |
| -- कई भाषाएं हैं जो जावास्क्रिप्ट में "transpiled" (किसी अन्य भाषा में अनुवाद करने की प्रक्रिया) होती हैं और कुछ विशेषताएं प्रदान करती हैं।जावास्क्रिप्ट पर महारत हासिल करने के बाद, कम से कम संक्षेप में उन पर एक नज़र डालने की सलाह दी जाती है। |
| 119 | +- कई भाषाएं हैं जो जावास्क्रिप्ट में रूपांतरित ("transpiled", किसी अन्य भाषा में अनुवाद करने की प्रक्रिया) होती हैं और कुछ विशेषताएं प्रदान करती हैं।जावास्क्रिप्ट पर महारत हासिल करने के बाद, कम से कम संक्षेप में उन पर एक नज़र डालने की सलाह दी जाती है। |
0 commit comments