javascript µÄ±Õ°ü
±Õ°ü£¨closure£©ÊÇJavascriptÓïÑÔµÄÒ»¸öÄѵ㣬ҲÊÇËüµÄÌØÉ«£¬ºÜ¶à¸ß¼¶Ó¦Óö¼ÒªÒÀ¿¿±Õ°üʵÏÖ¡£
ÏÂÃæ¾ÍÊÇÎÒµÄѧϰ±Ê¼Ç£¬¶ÔÓÚJavascript³õѧÕßÓ¦¸ÃÊǺÜÓÐÓõġ£
Ò»¡¢±äÁ¿µÄ×÷ÓÃÓò
ÒªÀí½â±Õ°ü£¬Ê×ÏȱØÐëÀí½âJavascriptÌØÊâµÄ±äÁ¿×÷ÓÃÓò¡£
±äÁ¿µÄ×÷ÓÃÓòÎ޷ǾÍÊÇÁ½ÖÖ£ºÈ«¾Ö±äÁ¿ºÍ¾Ö²¿±äÁ¿¡£
JavascriptÓïÑÔµÄÌØÊâÖ®´¦£¬¾ÍÔÚÓÚº¯ÊýÄÚ²¿¿ÉÒÔÖ±½Ó¶ÁÈ¡È«¾Ö±äÁ¿¡£
¡¡¡¡var n=999;
¡¡¡¡function f1(){
¡¡¡¡¡¡¡¡alert(n);
¡¡¡¡}
¡¡¡¡f1(); // 999
ÁíÒ»·½Ã棬ÔÚº¯ÊýÍⲿ×ÔÈ»ÎÞ·¨¶ÁÈ¡º¯ÊýÄڵľֲ¿±äÁ¿¡£
¡¡¡¡function f1(){
¡¡¡¡¡¡¡¡var n=999;
¡¡¡¡}
¡¡¡¡alert(n); // error
ÕâÀïÓÐÒ»¸öµØ·½ÐèҪעÒ⣬º¯ÊýÄÚ²¿ÉùÃ÷±äÁ¿µÄʱºò£¬Ò»¶¨ÒªÊ¹ÓÃvarÃüÁî¡£Èç¹û²»ÓõĻ°£¬Äãʵ¼ÊÉÏÉùÃ÷ÁËÒ»¸öÈ«¾Ö±äÁ¿£¡
¡¡¡¡function f1(){
¡¡¡¡¡¡¡¡n=999;
¡¡¡¡}
¡¡¡¡f1();
¡¡¡¡alert(n); // 999
¶þ¡¢ÈçºÎ´ÓÍⲿ¶ÁÈ¡¾Ö²¿±äÁ¿£¿
³öÓÚÖÖÖÖÔÒò£¬ÎÒÃÇÓÐʱºòÐèÒªµÃµ½º¯ÊýÄڵľֲ¿±äÁ¿¡£µ«ÊÇ£¬Ç°ÃæÒѾ˵¹ýÁË£¬Õý³£Çé¿öÏ£¬ÕâÊÇ°ì²»µ½µÄ£¬Ö»ÓÐͨ¹ý±äͨ·½·¨²ÅÄÜʵÏÖ¡£
ÄǾÍÊÇÔÚº¯ÊýµÄÄÚ²¿£¬ÔÙ¶¨ÒåÒ»¸öº¯Êý¡£
¡¡¡¡function f1(){
¡¡¡¡¡¡¡¡n=999;
¡¡¡¡¡¡¡¡function f2(){
¡¡¡¡¡¡¡¡¡¡¡¡alert(n); // 999
¡¡¡¡¡¡¡¡}
¡¡¡¡}
ÔÚÉÏÃæµÄ´úÂëÖУ¬º¯Êýf2¾Í±»°üÀ¨ÔÚº¯Êýf1ÄÚ²¿£¬Õâʱf1ÄÚ²¿µÄËùÓоֲ¿±äÁ¿£¬¶Ôf2¶¼ÊǿɼûµÄ¡£µ«ÊÇ·´¹ýÀ´¾Í²»ÐУ¬f2ÄÚ²¿µÄ¾Ö²¿±äÁ¿£¬¶Ôf1¾ÍÊDz»¿É¼ûµÄ¡£Õâ¾ÍÊÇJavascriptÓïÑÔÌØÓеēÁ´Ê½×÷ÓÃÓò”½á¹¹£¨chain
scope£©£¬×Ó¶ÔÏó»áÒ»¼¶Ò»¼¶µØÏòÉÏÑ°ÕÒËùÓи¸¶ÔÏóµÄ±äÁ¿¡£ËùÒÔ£¬¸¸¶ÔÏóµÄËùÓбäÁ¿£¬¶Ô×Ó¶ÔÏó¶¼ÊǿɼûµÄ£¬·´Ö®Ôò²»³ÉÁ¢¡£
¼ÈÈ»f2¿ÉÒÔ¶ÁÈ¡f1Öеľֲ¿±äÁ¿£¬ÄÇôֻҪ°Ñf2×÷Ϊ·µ»ØÖµ£¬ÎÒÃDz»¾Í¿ÉÒÔÔÚf1Íⲿ¶ÁÈ¡ËüµÄÄÚ²¿±äÁ¿ÁËÂð£¡
¡¡¡¡function f1(){
¡¡¡¡¡¡¡¡n=999;
¡¡¡¡¡¡¡¡function f2(){
¡¡¡¡¡¡¡¡¡¡¡¡alert(n);
¡¡¡¡¡¡¡¡}
¡¡¡¡¡¡¡¡return f2;
¡¡¡¡}
¡¡¡¡var result=f1();
¡¡¡¡result(); // 999
Èý¡¢±Õ°üµÄ¸ÅÄî
ÉÏÒ»½Ú´úÂëÖеÄf2º¯Êý£¬¾ÍÊDZհü¡£
¸÷ÖÖרҵÎÄÏ×Éϵē±Õ°ü”£¨closure£©¶¨Òå·Ç³£³éÏ󣬺ÜÄÑ¿´¶®¡£ÎÒµÄÀí½âÊÇ£¬±Õ°ü¾ÍÊÇÄܹ»¶ÁÈ¡ÆäËûº¯ÊýÄÚ²¿±äÁ¿µÄº¯Êý¡£
ÓÉÓÚÔÚJavascriptÓïÑÔÖУ¬Ö»Óк¯ÊýÄÚ²¿µÄ×Óº¯Êý²ÅÄܶÁÈ¡¾Ö²¿±äÁ¿£¬Òò´Ë¿ÉÒ԰ѱհü¼òµ¥Àí½â³É“¶¨ÒåÔÚÒ»¸öº¯ÊýÄÚ²¿µÄº¯Êý”¡£
ËùÒÔ£¬ÔÚ±¾ÖÊÉÏ£¬±Õ°ü¾ÍÊǽ«º¯ÊýÄÚ²¿ºÍº¯ÊýÍⲿÁ¬½ÓÆðÀ´µÄÒ»×ùÇÅÁº¡£
ËÄ¡¢±Õ°üµÄÓÃ;
±Õ°ü¿ÉÒÔÓÃÔÚÐ
Ïà¹ØÎĵµ£º
ÔÚjavascriptÖжÔÏóͨ³£°üÀ¨Á½ÖÖÀàÐÍ£ºÄÚÖöÔÏóºÍä¯ÀÀÆ÷¶ÔÏ󣬴ËÍ⣬Óû§»¹¿ÉÒÔ×Ô¶¨Òå¶ÔÏó¡£
¶ÔÏó°üº¬Á½¸öÒªËØ£º1.ÓÃÀ´ÃèÊö¶ÔÏóÌØÐÔµÄÒ»×éÊý¾Ý£¬Ò²¾ÍÊÇÈô¸É±äÁ¿£¬Í¨³£³ÆΪÊôÐÔ¡£2.ÓÃÀ´²Ù×÷¶ÔÏóÌØÐÔµÄÈô¸É¶¯×÷£¬Ò²¾ÍÊÇÈô¸Éº¯Êý£¬Í¨³£³ÆΪ·½·¨¡£
ä¯ÀÀÆ÷¶ÔÏó
¶ÔÏó
º¬Òå
anchor
µ±Ç°ÎĵµÖÐÉèÖÃÁËnameÊôÐԵij¬Á´½Ó
appl ......
<!--
/* Font Definitions */
@font-face
{font-family:ËÎÌå;
panose-1:2 1 6 0 3 1 1 1 1 1;
mso-font-alt:SimSun;
mso-font-charset:134;
mso-generic-font-family:auto;
mso-font-pitch:variable;
mso-font-signature:3 135135232 16 0 262145 0;}
@font-face
{font-family:"Cambria Mat ......
function
fn(a,b,c)
{
var
s
=
""
;
var
i;
s
+=
"
º¯Êý´«Èë²ÎÊý¸öÊý:
"
+
fn.arguments.length
+
"
\n
" ......
getAttribute()·½·¨
¡ñÒ»·ÝÎĵµ¾ÍÊÇÒ»¿Ã½ÚµãÊ÷¡£
¡ñ½Úµã·ÖΪ²»Í¬µÄÀàÐÍ£ºÔªËؽڵ㡢ÊôÐÔ½ÚµãºÍÎı¾½ÚµãµÈ¡£
¡ñgetElementById()·½·¨½«·µ»ØÒ»¸ö¶ÔÏ󣬸öÔÏó¶ÔÓ¦×ÅÎĵµÀïµÄÒ»¸öÌض¨µÄÔªËؽڵ㡣
¡ñgetElementsByTagName()·½·¨½«·µ»ØÒ»¸ö¶ÔÏóÊý×飬ËüÃÇ·Ö±ð¶ÔÓ¦×ÅÎĵµÀïµÄÒ»¸ ......