## 題目1:請描述Post請求和Get請求的區別以及二者一般應用場景
Post請求和Get請求都是向服務器獲取數據的請求,Get是通過URL向服務器發送獲取數據的請求,Post是把要提交的數據放在HTTP包體中向服務器提交數據的請求。二者理論上都沒有長度限制,例如IE瀏覽器對URL的長度限制為2KB。Post請求比Get請求安全性更高,因為Get請求通過URL實現,用戶名和密碼很容易暴露,所以在傳參的時候一定要加密。可以采用Base64()進行編解碼。
~~~
var b = new Base64();
b.encode(pwd)
b.decode(pwd)
~~~
這篇文章對于二者的分析比較到位:[話說GET與POST那點恩怨](http://blog.csdn.net/liujiahan629629/article/details/17585899)
## 題目2:請說明forward和redirect的主要區別
forward是服務器內部重定向,程序收到請求后重新定向到另一個程序,客戶端無需知道;redirect則是服務器收到請求后發生一個狀態頭給用戶,用戶再次請求,這樣會有兩次客戶端到服務端的通信,由于是再次請求,因此上一個jsp的信息不被保留。

題目3:請寫出以下javascript代碼的執行結果
~~~
var a1 = 10; var a2 = 20;
var r1 = "a1+a2=" + a1 + a2;
var str1 = "I am a soft engineer";
var r2 = str1.substring(9, 14);
document.write(r1);
document.write("%");
document.write(r2);
~~~
結果是:a1+a2=1020%ft en
## 題目4:請寫出以下javascript代碼的執行結果,并說明原因
~~~
function Person(name) {
this.name = name;
this.move = function () { alert("Prepare move for person [" + this.name + "]") };
}
Person.prototype.move = function () { alert("Ready move for person [" + this.name + "]") };
$(function () {
var person = new Person("Jim");
person.move();
});
~~~
執行的結果是:Prepare move for person [Jim]
個人覺得原因是由于對象如果自帶有move()方法就不會向原型鏈查找。