JavaScript º¯Êýµ÷ÓÃ

JavaScript º¯ÊýÄÚ²¿µÄ´úÂë»áÔÚ¡°Ä³Îµ÷ÓÃËüʱִÐС£

µ÷Óà JavaScript º¯Êý

ÔÚº¯Êý±»¶¨Òåʱ£¬º¯ÊýÄÚ²¿µÄ´úÂë²»»áÖ´ÐС£

ÔÚº¯Êý±»µ÷ÓÃʱ£¬º¯ÊýÄÚ²¿µÄ´úÂë»á±»Ö´ÐС£

µ÷Óú¯Êýͨ³£Ò²¿ÉÒÔ˵¡°Æô¶¯º¯Êý¡±»ò¡°Ö´Ðк¯Êý¡±¡£

ÔÚ±¾½Ì³ÌÖУ¬ÎÒÃÇʹÓá°µ÷Óᱡ£

ÒÔº¯ÊýÐÎʽµ÷Óú¯Êý

ʵÀý

function myFunction(a, b) {
    return a * b;
}
myFunction(10, 2);           // ½«·µ»Ø 20

Ç××ÔÊÔÒ»ÊÔ

ÒÔÉϺ¯Êý²»ÊôÓÚÈκζÔÏó¡£µ«ÊÇÔÚ JavaScript ÖУ¬Ê¼ÖÕ´æÔÚÒ»ÖÖĬÈϵÄÈ«¾Ö¶ÔÏó¡£

ÔÚ HTML ÖУ¬Ä¬ÈÏÈ«¾Ö¶ÔÏóÊÇ HTML Ò³Ãæ±¾Éí£¬ËùÓÐÉÏÃæµÄº¯Êý¡°ÊôÓÚ¡±HTML Ò³Ãæ¡£

ÔÚä¯ÀÀÆ÷ÖУ¬Õâ¸öÒ³Ãæ¶ÔÏó¾ÍÊÇä¯ÀÀÆ÷´°¿Ú¡£ÉÏÃæµÄº¯Êý×Ô¶¯³ÉΪһ¸ö´°¿Úº¯Êý¡£

myFunction() ºÍ window.myFunction() ÊÇͬһ¸öº¯Êý£º

ʵÀý

function myFunction(a, b) {
    return a * b;
}
window.myFunction(10, 2);    // Ò²»á·µ»Ø 20

Ç××ÔÊÔÒ»ÊÔ

ÕâÊǵ÷Óú¯ÊýµÄ³£¼û·½·¨£¬µ«²¢²»ÊÇÒ»¸öºÃϰ¹ß¡£

È«¾Ö±äÁ¿¡¢·½·¨»òº¯ÊýºÜÈÝÒ×ÔÚÈ«¾Ö¶ÔÏóÖвúÉúÃüÃû³åÍ»ºÍ©¶´¡£

this ¹Ø¼ü´Ê

ÔÚ JavaScript ÖУ¬±»³ÆÎª this µÄÊÂÎָµÄÊÇ¡°ÓµÓС±µ±Ç°´úÂëµÄ¶ÔÏó¡£

this µÄÖµ£¬ÔÚº¯ÊýÖÐʹÓÃʱ£¬ÊÇ¡°ÓµÓС±¸Ãº¯ÊýµÄ¶ÔÏó¡£

Çë×¢Òâ this ²¢²»ÊDZäÁ¿¡£ËüÊôÓڹؼü´Ê¡£ÄúÎÞ·¨¸Ä±ä this µÄÖµ¡£

È«¾Ö¶ÔÏó

µ±²»´øÓµÓÐÕß¶ÔÏóµ÷ÓöÔÏóʱ£¬this µÄÖµ³ÉΪȫ¾Ö¶ÔÏó¡£

ÔÚ web ä¯ÀÀÆ÷ÖУ¬È«¾Ö¶ÔÏó¾ÍÊÇä¯ÀÀÆ÷¶ÔÏó¡£

±¾ÀýÒÔ this µÄÖµ·µ»ØÕâ¸ö window ¶ÔÏó£º

ʵÀý

var x = myFunction();            // x ½«³ÉΪ window ¶ÔÏó

function myFunction() {
   return this;
}

Ç××ÔÊÔÒ»ÊÔ

µ÷ÓÃÒ»¸öº¯Êý×÷Ϊһ¸öÈ«¾Öº¯Êý£¬»áµ¼Ö this µÄÖµ³ÉΪȫ¾Ö¶ÔÏó¡£

×÷Ϊ±äÁ¿À´Ê¹Óà window ¶ÔÏóºÜÈÝÒ×ʹ³ÌÐò±ÀÀ£¡£

×÷Ϊ·½·¨À´µ÷Óú¯Êý

ÔÚ JavaScript ÖУ¬Äú¿ÉÒ԰Ѻ¯Êý¶¨ÒåΪ¶ÔÏó·½·¨¡£

ÏÂÃæµÄÀý×Ó´´½¨ÁËÒ»¸ö¶ÔÏó£¨myObject£©£¬´øÓÐÁ½¸öÊôÐÔ£¨firstName ºÍ lastName£©£¬ÒÔ¼°Ò»¸ö·½·¨£¨fullName£©£º

ʵÀý

var myObject = {
    firstName:"Bill",
    lastName: "Gates",
    fullName: function () {
        return this.firstName + " " + this.lastName;
    }
}
myObject.fullName();         // ½«·µ»Ø "Bill Gates"

Ç××ÔÊÔÒ»ÊÔ

fullName ·½·¨ÊÇÒ»¸öº¯Êý¡£¸Ãº¯ÊýÊôÓÚ¶ÔÏó¡£myObject ÊǺ¯ÊýµÄÓµÓÐÕß¡£

±»³ÆÎª this µÄÊÂÎÊÇ¡°ÓµÓС±Õâ¶Î JavaScript ´úÂëµÄ¶ÔÏó¡£ÔÚ´ËÀýÖУ¬this µÄÖµÊÇ myObject¡£

²âÊÔһϣ¡ÐÞ¸ÄÕâ¸ö fullName ·½·¨À´·µ»Ø this µÄÖµ£º

ʵÀý

var myObject = {
    firstName:"John",
    lastName: "Doe",
    fullName: function () {
        return this;
    }
}
myObject.fullName();          // ½«·µ»Ø [object Object]£¨ÓµÓÐÕß¶ÔÏó£©

Ç××ÔÊÔÒ»ÊÔ

ÒÔ¶ÔÏó·½·¨À´µ÷Óú¯Êý£¬»áµ¼Ö this µÄÖµ³ÉΪ¶ÔÏó±¾Éí¡£

ͨ¹ýº¯Êý¹¹ÔìÆ÷À´µ÷Óú¯Êý

Èç¹ûº¯Êýµ÷ÓõÄÇ°ÃæÊÇ new ¹Ø¼ü×Ö£¬ÄÇôÕâÊÇÒ»¸ö¹¹Ô캯Êýµ÷Óá£

Ëü¿´ÆðÀ´ÏñÄã´´½¨Ò»¸öеĺ¯Êý£¬µ«ÓÉÓÚ JavaScript º¯ÊýÊǶÔÏó£¬Äãʵ¼ÊÉÏ´´½¨Ò»¸öжÔÏó£º

ʵÀý

// ÕâÊǺ¯Êý¹¹ÔìÆ÷£º
function myFunction(arg1, arg2) {
    this.firstName = arg1;
    this.lastName  = arg2;
}

// ´´½¨ÁËÒ»¸öжÔÏó£º
var x = new myFunction("Bill", "Gates");
x.firstName;                             // »á·µ»Ø "Bill"

Ç××ÔÊÔÒ»ÊÔ

¹¹ÔìÆ÷µ÷Óûᴴ½¨Ð¶ÔÏó¡£Ð¶ÔÏó»á´ÓÆä¹¹ÔìÆ÷¼Ì³ÐÊôÐԺͷ½·¨¡£

¹¹ÔìÆ÷ÄÚµÄ this ¹Ø¼ü´ÊûÓÐÖµ¡£

this µÄÖµ»á³ÉΪµ÷Óú¯Êýʱ´´½¨µÄжÔÏó¡£

VUE