JavaScript this ¹Ø¼ü×Ö
thisÊÇJavascriptÓïÑÔµÄÒ»¸ö¹Ø¼ü×Ö¡£
Ëü´ú±íº¯ÊýÔËÐÐʱ£¬×Ô¶¯Éú³ÉµÄÒ»¸öÄÚ²¿¶ÔÏó£¬Ö»ÄÜÔÚº¯ÊýÄÚ²¿Ê¹ÓᣱÈÈ磬
¡¡¡¡function test(){
¡¡¡¡¡¡¡¡this.x = 1;
¡¡¡¡}
Ëæ×ź¯ÊýʹÓó¡ºÏµÄ²»Í¬£¬thisµÄÖµ»á·¢Éú±ä»¯¡£µ«ÊÇÓÐÒ»¸ö×ܵÄÔÔò£¬ÄǾÍÊÇthisÖ¸µÄÊÇ£¬µ÷Óú¯ÊýµÄÄǸö¶ÔÏó¡£
ÏÂÃæ·ÖËÄÖÖÇé¿ö£¬ÏêϸÌÖÂÛthisµÄÓ÷¨¡£
Çé¿öÒ»£º´¿´âµÄº¯Êýµ÷ÓÃ
ÕâÊǺ¯ÊýµÄ×îͨ³£Ó÷¨£¬ÊôÓÚÈ«¾ÖÐÔµ÷Óã¬Òò´Ëthis¾Í´ú±íÈ«¾Ö¶ÔÏóGlobal¡£
Çë¿´ÏÂÃæÕâ¶Î´úÂ룬ËüµÄÔËÐнá¹ûÊÇ1¡£
¡¡¡¡function test(){
¡¡¡¡¡¡¡¡this.x = 1;
¡¡¡¡¡¡¡¡alert(this.x);
¡¡¡¡}
¡¡¡¡test(); // 1
ΪÁËÖ¤Ã÷this¾ÍÊÇÈ«¾Ö¶ÔÏó£¬ÎÒ¶Ô´úÂë×öһЩ¸Ä±ä£º
¡¡¡¡var x = 1;
¡¡¡¡function test(){
¡¡¡¡¡¡¡¡alert(this.x);
¡¡¡¡}
¡¡¡¡test(); // 1
ÔËÐнá¹û»¹ÊÇ1¡£ÔÙ±äһϣº
¡¡¡¡var x = 1;
¡¡¡¡function test(){
¡¡¡¡¡¡¡¡this.x = 0;
¡¡¡¡}
¡¡¡¡test();
¡¡¡¡alert(x); //0
Çé¿ö¶þ£º×÷Ϊ¶ÔÏó·½·¨µÄµ÷ÓÃ
º¯Êý»¹¿ÉÒÔ×÷Ϊij¸ö¶ÔÏóµÄ·½·¨µ÷Óã¬Õâʱthis¾ÍÖ¸Õâ¸öÉϼ¶¶ÔÏó¡£
¡¡¡¡function test(){
¡¡¡¡¡¡¡¡alert(this.x);
¡¡¡¡}
¡¡¡¡var o = {};
¡¡¡¡o.x = 1;
¡¡¡¡o.m = test;
¡¡¡¡o.m(); // 1
Çé¿öÈý ×÷Ϊ¹¹Ô캯Êýµ÷ÓÃ
Ëùν¹¹Ô캯Êý£¬¾ÍÊÇͨ¹ýÕâ¸öº¯ÊýÉú³ÉÒ»¸öжÔÏó£¨object£©¡£Õâʱ£¬this¾ÍÖ¸Õâ¸öжÔÏó¡£
¡¡¡¡function test(){
¡¡¡¡¡¡¡¡this.x = 1;
¡¡¡¡}
¡¡¡¡var o = new test();
¡¡¡¡alert(o.x); // 1
ÔËÐнá¹ûΪ1¡£ÎªÁ˱íÃ÷Õâʱthis²»ÊÇÈ«¾Ö¶ÔÏó£¬ÎÒ¶Ô´úÂë×öһЩ¸Ä±ä£º
¡¡¡¡var x = 2;
¡¡¡¡function test(){
¡¡¡¡¡¡¡¡this.x = 1;
¡¡¡¡}
¡¡¡¡var o = new test();
¡¡¡¡alert(x); //2
ÔËÐнá¹ûΪ2£¬±íÃ÷È«¾Ö±äÁ¿xµÄÖµ¸ù±¾Ã»±ä¡£
Çé¿öËÄ applyµ÷ÓÃ
apply()ÊǺ¯Êý¶ÔÏóµÄÒ»¸ö·½·¨£¬ËüµÄ×÷ÓÃÊǸı亯ÊýµÄµ÷ÓöÔÏó£¬ËüµÄµÚÒ»¸ö²ÎÊý¾Í±íʾ¸Ä±äºóµÄµ÷ÓÃÕâ¸öº¯ÊýµÄ¶ÔÏó¡£Òò´Ë£¬thisÖ¸µÄ¾ÍÊÇÕâµÚÒ»¸ö²ÎÊý¡£
¡¡¡¡var x = 0;
¡¡¡¡function test(){
¡¡¡¡¡¡¡¡alert(this.x);
¡¡¡¡}
¡¡¡¡var o={};
¡¡¡¡o.x = 1;
¡¡¡¡o.m = test;
¡¡¡¡o.m.apply(); //0
apply()µÄ²ÎÊýΪ¿Õʱ£¬Ä¬Èϵ÷ÓÃÈ«¾Ö¶ÔÏó¡£Òò´Ë£¬ÕâʱµÄÔËÐнá¹ûΪ0£¬Ö¤Ã÷thisÖ¸µÄÊÇÈ«¾Ö¶ÔÏó¡£
Èç¹û°Ñ×îºóÒ»ÐдúÂëÐÞ¸ÄΪ
¡¡¡¡o.m.apply(o); //1
ÔËÐнá¹û¾Í±ä³ÉÁË1£¬Ö¤Ã÷ÁËÕâʱthis´ú±íµÄÊǶÔÏóo¡£
Ïà¹ØÎĵµ£º
/*
ÏÞÖÆÊäÈë×Ö·ûµÄλÊý
strÊÇÓû§ÊäÈë×Ö·û´®£¬lenÊÇÒªÏÞÖÆµÄλÊý
----------------------------
*/
function isSmall(str,len){
if (str.length<len){
return(true);
&nb ......
ÕâÆª¿ªÊ¼»á·ÖÎöÁ÷ÐеÄjs¿â֮дÀ෽ʽ¡£¸÷ÖÖ¿âµÄдÀ෽ʽËäÈ»Ç§Ææ°Ù¹Ö£¬µ«ÈÔÈ»ÌÓÀë²»Á˱¾ÖÊ---Óù¹Ô캯ÊýºÍÔÐÍ
À´×é×°Àà¡£
6¡¢Prototype.jsµÄдÀ෽ʽ
//prototype.jsÖеĴúÂë
var Class = {
create: function() {
return function() {
this.initialize.apply(this, arguments);
}
}
}
//¼ò»¯ ......
9¡¢YUIµÄдÀ෽ʽ
ÕâÀïÒýÈëµÄÊÇYUI 2.7.0°æ£¬Ö»ÐèÒýÈëyahoo.js¡£YUIÒýÈëÁËÃüÃû¿Õ¼ä£¬ÀàËÆÓÚjavaµÄ°ü¡£ÒÔÏÂyahooµÄ¹¤¾ßº¯Êý°ü
YAHOO.namespace
YAHOO.lang
YAHOO.lang.hasOwnProperty
YAHOO.lang.extend
YAHOO.lang.augment
YAHOO.log
YAHOO_config and YAHOO.env
YUI Module Names
дÀ෽ʽ£º
//¶¨Òå°üà ......
1 ¿ò¼Ü±à³Ì¸ÅÊö
Ò»¸öHtml Ò³Ãæ¿ÉÒÔÓÐÒ»¸ö»ò¶à¸ö×Ó¿ò¼Ü£¬ÕâЩ×Ó¿ò¼ÜÒÔ<iframe>À´±ê¼Ç£¬ÓÃÀ´ÏÔʾһ
¸ö¶ÀÁ¢µÄHtml Ò³Ãæ¡£ÕâÀïËù½²µÄ¿ò¼Ü±à³Ì°üÀ¨¿ò¼ÜµÄ×ÔÎÒ¿ØÖÆÒÔ¼°¿ò¼ÜÖ®¼äµÄ»¥Ïà·ÃÎÊ£¬
ÀýÈç´ÓÒ»¸ö¿ò¼ÜÖÐÒýÓÃÁíÒ»¸ö¿ò¼ÜÖеÄJavaScript±äÁ¿¡¢µ÷ÓÃÆäËû¿ò¼ÜÄڵĺ¯Êý¡¢¿ØÖÆÁíÒ»
¸ö¿ò¼ÜÖÐ±íµ¥µÄÐÐΪµ ......
Èç¹ûÏë´ÓÍøÒ³Ìá½»²ÎÊýµ½·þÎñÆ÷£¬µÚÒ»¸öÏëµ½µÄ¾ÍÊÇHttpµÄForm±êÇ©¡£Ëü½«Óû§ÔÚ¿Í»§¶ËÍøÒ³ÌîдµÄÊý¾Ýͨ¹ýHTTP Post£¬Ìá½»µ½·þÎñ¶Ë¡£ÕâЩÌá½»µÄÊý¾Ý±»·ÅÔÚHTTPÏûÏ¢µÄbodyÀïÃæ£¬ÕâÑù£¬Óû§Ìá½»µÄÊý¾ÝÀíÂÛÉÏÊÇûÓ㤶ÈÏÞÖÆµÄ¡£Èç¹û·þÎñ¶ËÓõÄÊÇJ2EE£¬HttpServletRequest¿ÉÒԷdz£ÇáËɵÃÈ¡µ½ËùÓвΠ......