JavaScriptÖеÄJSON
JavaScriptÖеÄJSON
JavaScriptÊÇΪÍø¾°ä¯ÀÀÆ÷×öÒ³Ãæ½Å±¾ÓïÑÔ¶øʵÏÖµÄÒ»ÖÖ±à³ÌÓïÑÔ¡£ËüÏÖÔÚ»¹±»ºÜ¶àÈËÎó½âÊÇjavaµÄ×Ó¼¯¡£ËüÊÇÒ»ÖÖ¾ßÓÐÀàCÓï·¨ºÍÈõ¶ÔÏóµÄģʽÓïÑÔ¡£JavaScriptÍêÈ«×ñÊØECMAScriptÓïÑÔ˵Ã÷ÊéµÚÈý°æ¡£
JSONÊÇJavaScript¶ÔÏóÎÄ×ּǺŵÄ×Ó¼¯¡£ÓÉÓÚJSONÊÇJavaSriptµÄ×Ó¼¯£¬ËùÒÔÔÚJavaScriptÀ¿ÉÒÔ·½±ãµÄÓ¦¸ÃJSON¡£
var myJSONObject = {"bindings": [
{"ircEvent": "PRIVMSG", "method": "newURI", "regex": "^http://.*"},
{"ircEvent": "PRIVMSG", "method": "deleteURI", "regex": "^delete.*"},
{"ircEvent": "PRIVMSG", "method": "randomURI", "regex": "^random.*"}
]
};
ÔÚÕâ¸öÀý×ÓÀïÃ棬´´½¨Ò»¸öµ¥¶ÀµÄ³ÉÔ±——“bindings”£¬Õâ¸ö³ÉÔ±Àï°üº¬Ò»¸öÓÐÈý¸ö¶ÔÏó——“ircEvent”, “method”ºÍ“regex”µÄ¶ÔÏóÊý×é¡£
Êý¾Ý¿ÉÒÔÓöººÅ£¨£¬£©»òÕßϱê·û£¬Àý£º
myJSONObject.bindings[0].method // "newURI"
Äú¿ÉÐÄÓÃeval()°ÑJSONÖеÄÊý¾Ýת»¯Îª¶ÔÏó¡£ Eval()¿ÉÒÔµ÷ÓÃjavascript±àÒëÆ÷¡£ÓÉÓÚJSONÊÇJavaScriptµÄ×Ó¼¯£¬±àÒëÆ÷¿ÉÒÔÕýÈ·µÄ°ÑÎı¾×ª»¯Îª¶ÔÏó½á¹¹¡£Õâ¸ö×ֶαØÐëÊÇ°üÔÚ¸¸µÄÓï·¨Öеģ¬±ÜÃâÔÚJavaScriptµÄÓ﷨ϲúÉú¶þÒâÐÔ¡£
var myObject = eval('(' + myJSONtext + ')');
Õâ¾ßevalº¯ÊýÔËÐзdz£¿ì£¬µ«ËüÄܱàÒëºÍÔËÐÐÈκÎJavaScript³ÌÐò£¬Òò´ËÓÐÒ»¶¨µÄ°²È«Òþ»¼¡£µ±Ô´´úÂëÊÇ¿ÉÐÅÈβ¢ÇÒºÏÊʵÄʱºò£¬evalµÄÓ÷¨ÊÇÍêÈ«¿ÉÒԵġ£EÓÃJSONÆÊÎöÆ÷¸ü¼Ó°²È«¡£ÔÚXMLHttpRequestµÄÍøÒ³Ó¦ÓóÌÐòÖУ¬Ö»ÓÐÏàͬµÄÔ´³ÌÐòÌṩҳÃæ±»ÔÊÐí£¬Òò´ËËüÊÇ¿ÉÐŵġ£µ«ËüÒ²Óв»¿ÉÒÔµÄʱºò£ºÈç¹û·þÎñÆ÷ÔÚJSON±àÂëÉϲ»ÑÏÃÜ»òÕßËüûÓÐÈ«²¿Ö¤ÊµËüµÄËùÓÐÊäÈëµÄ»°£¬Ëü¿ÉÄÜ·¢ËÍ´øÓÐΣÏսű¾µÄ²»ºÏ·¨JSONÎı¾¡£¶øevalº¯ÊýÄÜÔËÐÐÕâ¸ö½Å±¾£¬ÊͷųöΣÏÕ¡£
ÓÃJSON½âÎöÆ÷¾ÍÄÜ·ÀÖ¹ÕâÖÖÊÂÇ飬JSON½âÎöÆ÷Ö»ÈÏJSONÄÚÈÝ£¬²»ÈÏ×÷±£½Å±¾¡£ÔÚÖ§³ÖJSONµÄä¯ÀÀÆ÷ÖУ¬JSON½âÎöÆ÷±Èeval¿ì¶àÁË£¬ÆÚÍûÔÚECMAScript±ê×¼µÄÏÂÒ»¸ö°æ±¾Öлá°üº¬¶Ô±¾µØJSONµÄÖ§³Ö¡£
var myObject = JSON.parse(myJSONtex
Ïà¹ØÎĵµ£º
1. ¶¨ÒåÒ»¸öÓÃÓÚÊä³öJavaScript´úÂë µÄServletÀà¡£
package com.mycompany.response.servlet;
import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServle ......
¿´ÊéµÄʱºòÓöµ½ÕâÑùÒ»¸öÎÊÌ⣬³ÌÐò´úÂëÈçÏÂ
var ob = function(){
var obj = this;
function fn1(){
alert( obj === window );//false
alert( this === window );//ture
}
this.fn2 = function() {
fn1();
}
}
µ±Ê±ºÜ²»Ã÷°×fn1ÀïÃæµÚ¶þ¸öalertµÄ½á¹û£¬Îª ......
XMLHttpRequest Script Injection XHR½Å±¾×¢Èë
Another approach to nonblocking scripts is to retrieve the JavaScript code using an XMLHttpRequest (XHR) object and then inject the script into the page. This technique involves creating an XHR object, downloading the JavaScript f ......
ȺÀïÌÖÂÛ¹ýµÄÌâÄ¿£¬·ÖÏíһϡ£
function test(){
var m=n=1;
alert(m);
}
alert(n);
//ÒòΪtestº¯ÊýûÓÐÖ´ÐУ¬³Ì¶È¿ØÖÆÁ÷²»ÄܽøÈë½øÐнâÎö£¬ÀïÃæµÄ¶«Î÷¶ÔÍâÃæ²»¿É¼û£¬Òò´Ë±¨´í
function test(){
var m=n=1;
alert(m);
}
test();
alert(n);
//µ±testÖ´Ðкó£¬Í ......