একটি জাভাস্ক্রিপ্ট ফাংশনে গ্লোবাল ভেরিয়েবল সংজ্ঞায়িত করুন


511

একটি জাভাস্ক্রিপ্ট ফাংশন একটি বৈশ্বিক পরিবর্তনশীল সংজ্ঞা দেওয়া সম্ভব?

আমি অন্যান্য ফাংশনে trailimageভেরিয়েবলটি (ফাংশনটিতে ঘোষিত makeObj) ব্যবহার করতে চাই ।

<html xmlns="http://www.w3.org/1999/xhtml">
    <head id="Head1" runat="server">
        <title></title>
        <script type="text/javascript">
            var offsetfrommouse = [10, -20];
            var displayduration = 0;
            var obj_selected = 0;
            function makeObj(address) {
                **var trailimage = [address, 50, 50];**
                document.write('<img id="trailimageid" src="' + trailimage[0] + '" border="0"  style=" position: absolute; visibility:visible; left: 0px; top: 0px; width: ' + trailimage[1] + 'px; height: ' + trailimage[2] + 'px">');
                obj_selected = 1;
            }

            function truebody() {
                return (!window.opera && document.compatMode && document.compatMode != "BackCompat") ? document.documentElement : document.body;
            }
            function hidetrail() {
                var x = document.getElementById("trailimageid").style;
                x.visibility = "hidden";
                document.onmousemove = "";
            }
            function followmouse(e) {
                var xcoord = offsetfrommouse[0];
                var ycoord = offsetfrommouse[1];
                var x = document.getElementById("trailimageid").style;
                if (typeof e != "undefined") {
                    xcoord += e.pageX;
                    ycoord += e.pageY;
                }
                else if (typeof window.event != "undefined") {
                    xcoord += truebody().scrollLeft + event.clientX;
                    ycoord += truebody().scrollTop + event.clientY;
                }
                var docwidth = 1395;
                var docheight = 676;
                if (xcoord + trailimage[1] + 3 > docwidth || ycoord + trailimage[2] > docheight) {
                    x.display = "none";
                    alert("inja");
                }
                else
                    x.display = "";
                x.left = xcoord + "px";
                x.top = ycoord + "px";
            }

            if (obj_selected = 1) {
                alert("obj_selected = true");
                document.onmousemove = followmouse;
                if (displayduration > 0)
                    setTimeout("hidetrail()", displayduration * 1000);
            }
        </script>
    </head>
    <body>
        <form id="form1" runat="server">
        <img alt="" id="house" src="Pictures/sides/right.gif" style="z-index: 1; left: 372px;
            top: 219px; position: absolute; height: 138px; width: 120px" onclick="javascript:makeObj('Pictures/sides/sides-not-clicked.gif');" />
        </form>
    </body>
</html>

19
বিশ্বব্যাপী ঘোষণার জন্য কেবল "var" কীওয়ার্ডটি ব্যবহার করবেন না
Ibu

20
@ ইব্রাহিম: "বিশ্বব্যাপী ঘোষণার জন্য কেবল" ভার "কীওয়ার্ড" গাক "ব্যবহার করবেন না ! হরর ! ;-) ধন্যবাদ, কঠোর মোড অন্তর্নিহিত গ্লোবালগুলি সরিয়ে দেয়।
টিজে ক্রাউডার

28
@ ইব্রাহিম ডায়ালো - ব্যবহার varনা করা গ্লোবাল ভেরিয়েবল ঘোষণা করে না । অঘোষিত ভেরিয়েবলের মান নির্ধারণের একটি ফলাফল হ'ল বৈশ্বিক বস্তুর উপর একটি সম্পত্তি তৈরি করা, যা ভেরিয়েবল ঘোষণার তুলনায় একেবারেই আলাদা।
রবজি 26'11

1
এই উত্তরে দরকারী তথ্য, অত্যধিক stackoverflow.com/a/4862268/1356098 :)
Erenor পাজ

উত্তর:


739

হ্যাঁ, অন্যরা যেমন বলেছে, আপনি varবৈশ্বিক পরিবর্তনশীল ঘোষণার জন্য বৈশ্বিক সুযোগ (সমস্ত ফাংশনের বাইরে) ব্যবহার করতে পারেন :

<script>
var yourGlobalVariable;
function foo() {
    // ...
}
</script>

পর্যায়ক্রমে, আপনি এখানে কোনও সম্পত্তি বরাদ্দ করতে পারেন window:

<script>
function foo() {
    window.yourGlobalVariable = ...;
}
</script>

... কারণ ব্রাউজারগুলিতে, সমস্ত গ্লোবাল ভেরিয়েবলগুলি বৈশ্বিক চলকগুলির সাথে ঘোষিত varহ'ল windowঅবজেক্টের বৈশিষ্ট্য । (সর্বশেষ স্পেসিফিকেশন সালে এর নাম ECMAScript 2015, নতুন let, constএবং classবিশ্বব্যাপী সুযোগ এ বিবৃতি globals বিশ্বব্যাপী বস্তুর বৈশিষ্ট্যাবলী নয় তৈরি; ES2015 একটি নতুন ধারণা।)

( অন্তর্নিহিত গ্লোবালগুলির ভয়াবহতাও রয়েছে , তবে উদ্দেশ্য হিসাবে এটি করবেন না এবং এটি দুর্ঘটনাক্রমে সম্ভবত এএস 5 ব্যবহার করে এড়াতে আপনার যথাসাধ্য চেষ্টা করবেন না "use strict"))

যা কিছু বলেছিল: আপনি যদি সম্ভব করতে পারেন তবে আমি বিশ্বব্যাপী পরিবর্তনগুলি এড়াতে চাই (এবং আপনি প্রায় নিশ্চিতভাবেই পারেন)। আমি উল্লেখ হিসাবে, তারা শেষ পর্যন্ত হচ্ছে বৈশিষ্ট্য window, এবং windowআগে থেকেই প্রচুর যথেষ্ট ভীড় সঙ্গে সব উপাদানের সঙ্গে কি একটি id(এবং কেবল একটি অনেক name) এটা ডাম্প করা হচ্ছে (এবং নির্বিশেষে যে আসন্ন স্পেসিফিকেশন, ইন্টারনেট শুধু একটি সাথে কাউকে সম্পর্কে ডাম্প nameসেখানে )।

পরিবর্তে, আপনার কোডটি কোনও স্কোপিং ফাংশনে মুড়ে রাখুন এবং সেই স্কোপিং ফাংশনে স্থানীয় ভেরিয়েবলগুলি ব্যবহার করুন এবং এর মধ্যে আপনার অন্যান্য ফাংশন বন্ধ করে দিন:

<script>
(function() { // Begin scoping function
    var yourGlobalVariable; // Global to your code, invisible outside the scoping function
    function foo() {
        // ...
    }
})();         // End scoping function
</script>

98
+1 স্পষ্টভাবে এটিকে উইন্ডোতে ঘোষণা করা সর্বাধিক পঠনযোগ্য উপায়।
ক্যাস্পার ক্লিজনে

8
নোটে ব্যবহার করে windowকাজ করবে না মনে রাখবেন । এখানে সবচেয়ে সহজ কৌশলটি সেট করা: GLOBAL.window = GLOBAL;- এই সম্পর্কিত প্রশ্নে বর্ণিত হিসাবে । অবশ্যই, এটি সুন্দর ধারণা নয়। আমি অন্য উপায়ে অন্যদিকে কাজ করতে পছন্দ করি, তাই আমি GLOBALপরিবর্তে ব্যবহার করতে পারি window
ডোমি

4
@ ক্যাস্পারক্লেইজনে, আমি এটি বুঝতে পারি না। আপনি উইন্ডোতে কেন এটি বরাদ্দ করবেন যখন আপনার কাছে আক্ষরিকভাবে উইন্ডো অবজেক্টটি উপস্থিত রয়েছে তার কোনও প্রমাণ নেই। আপনার কোডটি ভবিষ্যতে কীভাবে ব্যবহৃত হবে সে সম্পর্কে আপনি কিছুই জানেন না। এটি আপনার নোডের পরিবর্তে মঙ্গোডিবি পরিবেশ বা রিনোতেও ব্যবহৃত হতে পারে। এবং উদাহরণস্বরূপ আপনি যদি ওয়েব কর্মীদের ব্যবহার করেন তবে উইন্ডো অবজেক্টটি ব্রাউজারেও দৃশ্যমান নয়। এটি সম্পূর্ণরূপে পুনঃব্যবহারযোগ্যতাকে হত্যা করবে।
গেরম্যান

4
window.yourGlobalVariable = ...;স্ট্যাক সাইটে 5 থেকে 6 টি প্রশ্ন পড়ার পরে একটি কবজির মতো কাজ করে।
আহমেদ সৈয়দ

6
@ জ্যাকসকোকেমোমর: সেখানে যা ব্যবহার করার কোনও কারণ নেই eval। পরিবর্তে:window[dynamic_variable_name] = dynamic_variable_value;
টিজে ক্রাউডার

19

আপডেট 1: আপনি মন্তব্যগুলি পড়লে এই নির্দিষ্ট নামকরণ কনভেনশনকে ঘিরে একটি চমৎকার আলোচনা রয়েছে।

আপডেট 2: মনে হচ্ছে যেহেতু আমার উত্তর পোস্ট করা হয়েছে নামকরণ কনভেনশনটি আরও আনুষ্ঠানিক হয়ে গেছে। যে সমস্ত মানুষ পড়ান, বই লেখেন ইত্যাদি varঘোষণা এবং functionঘোষণার কথা বলে।

UPDATE3: এখানে অতিরিক্ত উইকিপিডিয়া পোস্টে আমার পয়েন্ট সমর্থন যে: http://en.wikipedia.org/wiki/Declaration_(computer_programming)#Declarations_and_Definitions

... এবং মূল প্রশ্নের উত্তর দিতে। আপনার ফাংশনের আগে ভেরিয়েবলটি ডিক্লেয়ার করুন। এটি কাজ করবে এবং স্কোপের শীর্ষে আপনার ভেরিয়েবলগুলি ঘোষণার ভাল অনুশীলনকে মেনে চলবে :)


7
আপনি যদি অন্য কোথাও আপনার ভেরিয়েবলগুলি সংজ্ঞায়িত করতে চান তবে উত্তোলন কী তা বুঝতে ভুলবেন না। এটি সম্পর্কে একটি খুব সুন্দর নিবন্ধ এখানে পর্যাপ্তরূপে . com/2010/ 2/ জাভা স্ক্রিপ্ট- স্লোপিং- এবং- হোস্টিং । শুভকামনা!
op1ekun

1
এটি সি এর অর্থ definitionএবং declarationঅর্থ নয় তবে আপনার প্রথম লাইনটি হয় ঘোষণা বা সংজ্ঞা (এটি যেখানে রয়েছে তার উপর নির্ভর করে) হতে পারে; দ্বিতীয়টি কেবল একটি অ্যাসাইনমেন্ট। একটি ঘোষণা কেবল শনাক্তকারীটির ব্যাখ্যা নির্দিষ্ট করে (অর্থাত্ myVarএটি একটি int); যদি ঘোষণা এছাড়াও স্টোরেজ সংরক্ষণ করে, এটি একটি হল definition। এটি টাইপিংয়ের সাথে সম্পর্কিত নয়; এটি সংকলন ইউনিটগুলি অন্যান্য সংকলন ইউনিটের রেফারেন্সগুলি কীভাবে বোঝে তার অংশ।
ইএমএল

4
এমনকি জাতীয় এ, var myVarবলা হয় ঘোষণা এবং (এটি টাইপ করা করা প্রয়োজন না) myVar = 10একটি নিয়োগ । আমি যৌগের (" var myVar = 10;) জন্য" সংজ্ঞা "শব্দটি শুনেছি ।
বার্গি

2
এটি প্রশ্নের উত্তর দিতে সহায়তা করে না। এটি একটি মন্তব্য ছিল না, উত্তর ছিল না।
স্টান্টডুডে

2
@ স্টান্টডুড আপনি সম্ভবত ঠিক বলেছেন :( আমি প্রশ্নের উত্তর দেওয়া শুরু করেছিলাম এবং তারপর কিছুটা ডাইভার্জ করার সিদ্ধান্ত নিয়েছি, এবং আমরা এটি পেয়েছি ঠিক তবুও কিছু পিপিএল এখনও এটি দরকারী বলে খুঁজে পেয়েছে তাই আমি এখানে রেখে দিয়েছি। আপনার জন্য ধন্যবাদ প্রতিক্রিয়া!
op1ekun

15

শুধু ঘোষণা

var trialImage;

বাইরে। তারপর

function makeObj(address) {
    trialImage = [address, 50, 50];
..
..
}

আশাকরি এটা সাহায্য করবে.


12

না, আপনি পারবেন না। ফাংশনের বাইরে কেবল ভেরিয়েবল ঘোষণা করুন। আপনি মূল্য নির্ধারণের সাথে সাথে আপনাকে এটি ঘোষণা করতে হবে না:

var trailimage;

function makeObj(address) {
  trailimage = [address, 50, 50];

1
দুঃখিত! "জাভাস্ক্রিপ্ট ফাংশনে কোনও বৈশ্বিক পরিবর্তনশীল সংজ্ঞা দেওয়া সম্ভব?" - "না, আপনি পারবেন না" সঠিক নয়, যেমন প্রথম উত্তরটি দেখায়!
মোস্তফা.0x

5
@ মুস্তাফা.0x: আপনি ভুল করেছেন। আপনি কোনও ফাংশনের অভ্যন্তরে গ্লোবাল ভেরিয়েবল সংজ্ঞা দিতে পারবেন না । আপনি স্পষ্টতই একটি গ্লোবাল ভেরিয়েবল তৈরি করতে পারেন , বা কোনও ফাংশনের অভ্যন্তরে একটি উইন্ডো সম্পত্তি তৈরি করতে পারেন, তবে আপনি কোনও ফাংশনের অভ্যন্তরে গ্লোবাল ভেরিয়েবল সংজ্ঞায়িত করতে পারবেন না।
গুফা

1
ব্রাউজার পরিবেশে জাভাস্ক্রিপ্ট সম্পর্কিত, একটি গ্লোবাল ভেরিয়েবল এবং এর বৈশিষ্ট্য windowসমার্থক। যেভাবেই হোক, আপনি যে শব্দার্থক পার্থক্যটি তৈরি করছেন তা স্পষ্ট, সুতরাং আমি আন-ডাউনভোটিকে আপত্তি করি না। সম্পাদনা: আমার ভোট পরিবর্তন করতে অক্ষম, দুঃখিত!
মোস্তফা.0x

2
যদি আপনি কঠোর ব্যবহার করছেন না (কিন্তু আপনি কেন কঠোর ব্যবহার করছেন না?), আপনি আসলে করতে ডিক্লেয়ার এবং একটি ফাংশন ভিতরে বিশ্বব্যাপী Vars সংজ্ঞায়িত সব ভাল অনুশীলন বিরুদ্ধে যাচ্ছে এবং মাত্র ব্যবহার করছেন না দ্বারা var, যা Guffa দ্বারা কি বোঝানো পরোক্ষভাবে তৈরি (যেমন @ ধ্রুবপাঠক সেখানেও নির্দেশ করেছেন)।
ক্রেগক্স

11

এটি কেবল ফাংশনের বাইরে ঘোষণা করুন এবং ফাংশনের ভিতরে মানগুলি নির্ধারণ করুন। কিছুটা এইরকম:

<script type="text/javascript">
    var offsetfrommouse = [10, -20];
    var displayduration = 0;
    var obj_selected = 0;
    var trailimage = null ;  // GLOBAL VARIABLE
    function makeObj(address) {
        trailimage = [address, 50, 50];  //ASSIGN VALUE

অথবা কেবলমাত্র আপনার ভেরিয়েবলের নামটি "ফাংশন" এর ভিতরে থেকে অপসারণ করা এটিকে বৈশ্বিক করে তোলে, তবে ক্লিনার কোডের জন্য একবার বাইরে ঘোষণা করা ভাল। এটিও কাজ করবে:

var offsetfrommouse = [10, -20];
var displayduration = 0;
var obj_selected = 0;

function makeObj(address) {
    trailimage = [address, 50, 50];  //GLOBAL VARIABLE , ASSIGN VALUE

আমি আশা করি এই উদাহরণটি আরও ব্যাখ্যা করবে: http://jsfiddle.net/qCrGE/

var globalOne = 3;
testOne();

function testOne()
{
    globalOne += 2;
    alert("globalOne is : " + globalOne );
    globalOne += 1;
}

alert("outside globalOne is : " + globalOne);

testTwo();

function testTwo()
{
    globalTwo = 20;
    alert("globalTwo is " + globalTwo);
    globalTwo += 5;
}

alert("outside globalTwo is :" + globalTwo);

3

এটি খুব সহজ ফাংশনের বাইরে ট্রিলিমেজ ভেরিয়েবল সংজ্ঞায়িত করে মেকওবিজে ফাংশনে এর মান সেট করে। এখন আপনি যে কোনও জায়গা থেকে এর মান অ্যাক্সেস করতে পারেন।

var offsetfrommouse = [10, -20];
var displayduration = 0;
var obj_selected = 0;
var trailimage;
function makeObj(address) {
      trailimage = [address, 50, 50];
      ....
}

2
    var Global = 'Global';

    function LocalToGlobalVariable() {

    //This creates a local variable.

    var Local = '5';

    //Doing this makes the variable available for one session
    //(a page refresh - Its the session not local)

    sessionStorage.LocalToGlobalVar = Local;

    // It can be named anything as long as the sessionStorage references the local variable.
    // Otherwise it won't work
    //This refreshes the page to make the variable take effect instead of the last variable set.

    location.reload(false);
    };

    //This calls the variable outside of the function for whatever use you want.

    sessionStorage.LocalToGlobalVar;

আমি বুঝতে পারি যে এটিতে সম্ভবত অনেকগুলি সিনট্যাক্স ত্রুটি রয়েছে তবে এটির সাধারণ ধারণা ... এটি নির্দেশ করার জন্য লেজিকে ধন্যবাদ ... আপনি স্থানীয় এবং সেশন স্টোরেজটি কী তা http: //www.w3schools এ খুঁজে পেতে পারেন । com / এইচটিএমএল / এইচটিএমএল 5_উইবেস্টোরেজ.এএসপি । আমার কোডের জন্য আমার একই জিনিসটির প্রয়োজন ছিল এবং এটি সত্যিই ভাল ধারণা ছিল।


এখনও অবধি এটি একমাত্র উত্তর যা মোটেও কার্যকর হয় তবে এটির জন্য পৃষ্ঠাটি পুনরায় লোড করা প্রয়োজন এবং location.reload(false);পৃষ্ঠাটি বারবার সতেজ করে।
আইরিন

1

ক্লাসিক উদাহরণ:

window.foo = 'bar';

আইআইএফই ব্যবহার করে সর্বোত্তম অনুশীলন অনুসরণ করে আধুনিক, নিরাপদ উদাহরণ :

;(function (root) {
    'use strict'

    root.foo = 'bar';
)(this));

আজকাল, ওয়েবস্টোরেজ এপিআই ব্যবহার করার বিকল্প রয়েছে

localStorage.foo = 42;

অথবা

sessionStorage.bar = 21;

পারফরম্যান্সওয়াইজ, আমি নিশ্চিত নই যে এটি ভেরিয়েবলের মান সংরক্ষণের চেয়ে লক্ষণীয়ভাবে ধীর er

আমি কি ব্যবহার করতে পারি ... তে বর্ণিত হিসাবে প্রশস্ত ব্রাউজার সমর্থন


লোকালস্টোরেশন এবং সেশনসট্রেজ কেবল স্ট্রিং মানগুলির জন্য কাজ করে।
টোলার্ন_

এটি ঠিক, @ হেরিটোলেয়ার্ন_, তবে তারপরে আপনি localStorage.foo = JSON.stringify({ arbitrary: 'object', meaning: 42, awesome: true });এবং ব্যবহার করতে পারেন var foo = JSON.decode(localStorage.foo);
লার্স গিরুপ ব্রিংক নীলসন

localStorageগ্লোবাল ভেরিয়েবলের সাথে কী করার আছে?
মিশা পেরেকোভস্কি

1
ওপি এই সমস্যার সমাধান সন্ধান করছে: "আমি ট্র্যালিমেজ পরিবর্তনশীল (মেকওবিজে ফাংশনে ঘোষিত) অন্যান্য ফাংশনে ব্যবহার করতে চাই" " কে বলে যে সমাধানটিতে বৈশ্বিক চলক জড়িত থাকতে হবে? গ্লোবাল ভেরিয়েবলগুলি খুব কমই যে কোনও কিছুর একটি ভাল সমাধান।
লার্স গিরুপ ব্রিংক নীলসন

0

সুতরাং আপনি ফাংশনের বাইরে উপলব্ধ ফাংশনের ভিতরে ভেরিয়েবল চান? ফাংশনের ভিতরে ভেরিয়েবলের ফলাফলগুলি কেন ফেরৎ দেবে না? var x = function returnX { var x = 0; return x; }ধারণা কি ...

    <html xmlns="http://www.w3.org/1999/xhtml">
    <head id="Head1" runat="server">
    <title></title>
    <script type="text/javascript">

        var offsetfrommouse = [10, -20];
        var displayduration = 0;
        var obj_selected = 0;

        function makeObj(address) {
            var trailimage = [address, 50, 50];
            document.write('<img id="trailimageid" src="' + trailimage[0] + '" border="0"  style=" position: absolute; visibility:visible; left: 0px; top: 0px; width: ' + trailimage[1] + 'px; height: ' + trailimage[2] + 'px">');
            obj_selected = 1;
            return trailimage;
        }

        function truebody() {
            return (!window.opera && document.compatMode && document.compatMode != "BackCompat") ? document.documentElement : document.body;
        }

        function hidetrail() {
            var x = document.getElementById("trailimageid").style;
            x.visibility = "hidden";
            document.onmousemove = "";
        }

        function followmouse(e) {
            var xcoord = offsetfrommouse[0];
            var ycoord = offsetfrommouse[1];
            var x = document.getElementById("trailimageid").style;
            if (typeof e != "undefined") {
                xcoord += e.pageX;
                ycoord += e.pageY;
            }

            else if (typeof window.event != "undefined") {
                xcoord += truebody().scrollLeft + event.clientX;
                ycoord += truebody().scrollTop + event.clientY;
            }
            var docwidth = 1395;
            var docheight = 676;
            if (xcoord + trailimage[1] + 3 > docwidth || ycoord + trailimage[2] > docheight) {
                x.display = "none";
                alert("inja");
            }
            else
                x.display = "";
            x.left = xcoord + "px";
            x.top = ycoord + "px";
        }

        if (obj_selected = 1) {
            alert("obj_selected = true");
            document.onmousemove = followmouse;
            if (displayduration > 0)
                setTimeout("hidetrail()", displayduration * 1000);
        }

    </script>
</head>
<body>
    <form id="form1" runat="server">
    <img alt="" id="house" src="Pictures/sides/right.gif" style="z-index: 1; left: 372px; top: 219px; position: absolute; height: 138px; width: 120px" onclick="javascript:makeObj('Pictures/sides/sides-not-clicked.gif');" />
    </form>
</body>
</html>

আমি এটি পরীক্ষা করে দেখিনি, তবে যদি আপনার কোডটি সেই ছোট পরিবর্তনের আগে কাজ করে, তবে এটি কাজ করা উচিত।


-1

এখানে একটি নমুনা কোড যা হেলফুল হতে পারে।

  var Human = function(){
   name = "Shohanur Rahaman";  // global variable
   this.name = "Tuly"; // constructor variable 
   var age = 21;
 };

  var shohan = new Human();

 document.write(shohan.name+"<br>");
 document.write(name);
 document.write(age); // undefined cause its local variable 

এখানে আমি একটি দুর্দান্ত উত্তর পেয়েছি কীভাবে জাভাস্ক্রিপ্ট-এ-গ্লোবাল-ভেরিয়েবল-এ-ঘোষণা করতে পারেন


যতক্ষণ এই তাত্ত্বিক প্রশ্নের উত্তর হতে পারে, এটা বাঞ্ছনীয় হবে উত্তর অপরিহার্য অংশের এখানে অন্তর্ভুক্ত করা, এবং রেফারেন্স এর জন্য লিঙ্ক প্রদান।
রোহিত গুপ্ত

-1

বৈকল্পিকটি বৈশ্বিক ভেরিয়েবলগুলি ব্যবহার না করেই অন্যান্য ফাংশনে ভেরিয়েবলটি উপলব্ধ করার জন্য এখানে আরও একটি সহজ পদ্ধতি:

function makeObj() {
  // var trailimage = 'test';
  makeObj.trailimage = 'test';
}
function someOtherFunction() {
  document.write(makeObj.trailimage);
}

makeObj();
someOtherFunction();


-2

আপনি যদি একটি স্টার্টআপ ফাংশন তৈরি করে থাকেন তবে আপনি বিশ্বব্যাপী ফাংশন এবং ভেরিয়েবলগুলি এইভাবে সংজ্ঞায়িত করতে পারেন:

function(globalScope)
{
     //define something
     globalScope.something() { 
         alert("It works");
     };
}(window)

ফাংশনটি এই যুক্তি সহ বিশ্বব্যাপী অনুরোধ করা হয়েছে, এটি এখানে বিশ্বব্যাপী সুযোগ। সুতরাং, কিছু একটা বিশ্বব্যাপী জিনিস হওয়া উচিত।


thisহয় undefinedএকটি ফাংশন কঠোর মোডে বাইরে এবং আন্তর্জাতিক বস্তুর পড়ুন না ব্যবহার করা উচিত।
মিশা পেরেকোভস্কি
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.