1. Ajax異步編程
1.1 同步異步概述
1.1.1 同步
一個人同一時間只能做一件事,只有一件事情做完,才能做另外一件事。
1.1.2 異步
一個人一件事情做了一半,轉而去做別的事情,當其他事情做完以後,再回過頭來繼續做之前未完成的事情
落實到代碼上,就是異步代碼雖然需要花費時間去執行,但程序不會等待異步代碼執行完成後再繼續執行後續代碼,而是直接執行後續代碼,當後續代碼執行完成後再回頭看異步代碼是否返回結果,如果已有返回結果,再調用事先準備好的回調函數處理異步代碼執行的結果
1.2 Ajax封裝
問題:發送一次請求代碼過多,發送多次請求代碼冗餘且重複
結果方案:將請求代碼封裝到函數中,發請求時調用函數即可
2.FormData
2.1 FormData對象的作用
1.模擬成HTML表單,相當於將HTML表單映射成表單對象,自動將表單對象中的數據拼接成請求參數的格式
2.異步上傳二進制文件
2.2 FormData對象的使用
1.準備HTML表單
2. 將HTML表單轉化爲formdata對象
3.提交表單對象
2.3 FormData對象的實例方法
1. 獲取表單中對象中屬性的值
2.設置表單對象中屬性的值
注意:如果設置的表單屬性存在,將會覆蓋屬性原有的值。 如果設置的表單屬性不存在,將會創建這個表單屬性
3.刪除表單對象中屬性的值
4.向表單對象中追加屬性值
2.4 FormData二進制文件上傳
2.5 FormData文件上傳進度展示
ev.loaded文件已經上傳了多少
ev.total 上傳文件的總大小
2.6 FormData文件上傳圖片即時預覽
在我們將圖片上傳到服務器端以後,服務器端通常都會將圖片地址作爲響應數據傳遞到客戶端,客戶端可以從響應數據中獲取圖片地址,然後將圖片再顯示在頁面中