摘要:對象的語法對象名屬性值屬性值屬性值屬性值林黛玉這個對象所對應(yīng)的屬性如下林黛玉如果對象取值的時候,直接對象屬性名稱就可以林黛玉什么是對象表現(xiàn)方式對象表示法,即以對象的格式表現(xiàn)出來的字符串。
前端知識點總結(jié)——Ajax 1.ajax
1.URL的作用 用于表示任意一個資源的位置(互聯(lián)網(wǎng)上) 2.詳解 格式:2.HTTP協(xié)議:// : @ : / ; ? # scheme:方案協(xié)議,以哪種方式到服務(wù)獲取資源,協(xié)議不區(qū)分大小寫, 常見的協(xié)議:http,https,ftp ssh:安全的遠程登錄 SMTP:郵件傳輸 POP3:郵件接收 DNS:域名解析 TELNET:遠程登錄 host:主機名,服務(wù)器主機名或IP地址或域名(由DNS轉(zhuǎn)換為IP地址) 127.0.0.1=localhost port:端口號 80 443 user:用戶名,訪問某些特定資源時需要用到的信息 pwd:密碼,訪問某些特定資源時需要用到的密碼 path:路徑,資源在服務(wù)器上具體存放位置 params:參數(shù)(跟服務(wù)器有關(guān)) query:查詢字符串,要傳遞給服務(wù)器的數(shù)據(jù) http://127.0.0.1/login.php?uname=dangdang&upwd=12345 frag:錨點 http://127.0.0.1/a.html#NO1
1.什么是HTTP Hyper Text Transfer Protocol:超文本傳輸協(xié)議 規(guī)范了數(shù)據(jù)如何打包以及傳遞 2.詳解 1.請求(request)消息 客戶端帶給服務(wù)器的數(shù)據(jù)都有哪些,由三部分組成 1.請求的起始行 1.請求方法 1.GET 表示客戶端向服務(wù)器獲取資源時使用 特點: 1.無請求主體 2.靠地址欄傳遞查詢字符串 2.POST 表示想傳遞數(shù)據(jù)給服務(wù)器時使用 特點: 1.有請求主體 3.PUT 表示客戶端想放置文件到服務(wù)器(禁用) 4.DELETE 表示客戶端要刪除服務(wù)器端的數(shù)據(jù)(禁用) 5.HEAD 表示客戶端只想獲取指定的響應(yīng)頭 6.CONNECT 測試連接 7.TRACE 追蹤請求路徑 8.OPTIONS 選項,保留以后使用 2.請求URL 3.協(xié)議版本:HTTP/1.12.1請求頭
1.Host:localhost/127.0.0.1 作用:告訴瀏覽器請求哪一個主機 2.Connection:keep-alive 作用:告訴服務(wù)器要進行持久連接 3.User-Agent: 作用:告訴服務(wù)器自己(瀏覽器)的類型 4.Accept-Language:zh-cn 作用:告訴服務(wù)器自己能接納的自然語言 5.Accept-Encoding:gzip 作用:告訴服務(wù)器自己能接收的數(shù)據(jù)壓縮類型是什么 6.Referer:http:localhost/Day01/login.html 作用:告訴服務(wù)器請求來自哪個頁面 3.請求主體 Form Data2.2響應(yīng)(response)消息
1.響應(yīng)起始行 1.協(xié)議版本號:HTTP/1.1 2.響應(yīng)狀態(tài)碼 作用:告訴瀏覽器,服務(wù)器的響應(yīng)狀態(tài)是什么問題(有問題,沒有問題,有問題問題大概是什么) 1xx:100-199 提示信息 2xx:成功響應(yīng) 200:ok 3xx:需要進行重定向 301:永久性重定向 302:臨時重定向 304:Not Modified 4xx:客戶端請求錯誤 404:Not Found 請求資源不存在 403:Forbidden 權(quán)限不夠 405:Method Not Allowed 請求方法不被允許 5xx:服務(wù)器運行錯誤 500:服務(wù)器內(nèi)部錯誤2.3原因短句
對狀態(tài)碼的簡單解釋 2.響應(yīng)頭 1.Date 作用:告訴瀏覽器,服務(wù)器的響應(yīng)時間 格林尼治時間(+8h) 2.Connection 作用:告訴瀏覽器已經(jīng)啟動持久連接 3.Content-Type 作用:響應(yīng)主體的類型是什么,告訴瀏覽器,用什么樣的方式解析響應(yīng)主體 1.text/html:響應(yīng)回來的數(shù)據(jù)是html文本 2.text/plain:響應(yīng)回來的數(shù)據(jù)是普通文本 3.text/css:響應(yīng)回來的數(shù)據(jù)是css樣式 4.application/xml:響應(yīng)回來的數(shù)據(jù)是xml格式 5.application/javascript:響應(yīng)回來的數(shù)據(jù)是js腳本代碼 6.application/json:響應(yīng)回來的數(shù)據(jù)是json格式的字符串 7.images/jegp:響應(yīng)回來的數(shù)據(jù)是圖片 3.響應(yīng)主體 Response3.緩存
1.什么是緩存 & 工作原理
客戶端將服務(wù)器響應(yīng)回來的數(shù)據(jù)進行自動保存,當再次訪問時,直接使用保存的數(shù)據(jù)。 2.緩存的優(yōu)點 1.減少了冗余數(shù)據(jù)的傳輸,節(jié)省客戶端流量 2.可以節(jié)省服務(wù)器帶寬 3.降低對服務(wù)器資源的消耗和運行要求 4.降低了由于遠距離而造成的延時加載 3.與緩存相關(guān)的消息頭 1.Cache-Control消息頭 作用:從服務(wù)器將文檔傳到客戶端時起,可以認為此文檔處于新鮮的秒數(shù) 語法: Cache-Control:max-age=處于新鮮的秒數(shù) ex: Cache-Control:max-age=3600; Cache-Control:max-age=0;每次都從服務(wù)器下載新資源 2.Expires消息頭 作用:指定緩存過期的確切時間(格林尼治時間) 語法:Expires:Thu,23 Nov 2017 GMT 如果希望客戶端不緩存,可以給一個過期的時間 Expires:Wed,22 Nov 2017 00:00:00 GMT Expires:0;---此方法不標準,執(zhí)行性不是特別好 4.在網(wǎng)頁上設(shè)置消息頭 1.更改服務(wù)器配置 2.網(wǎng)頁上增加消息 ex: 或 php: header("Expires:0"); Response.AddHeader("Expires","0");4.AJAX
1.名詞解釋
1.同步(Synchronous) 在一個任務(wù)進行中時,不能開啟其它的任務(wù) 同步訪問:瀏覽器在向服務(wù)器發(fā)送請求的時候,瀏覽器只能等待服務(wù)器的響應(yīng),不能做其它的事情。 出現(xiàn)場合: 1.地址欄輸入網(wǎng)址訪問頁面(www.baidu.com) 2.a標記默認跳轉(zhuǎn) 3.submit按鈕的表單提交 2.異步(Asynchronous) 在一個任務(wù)進行中時,可以開啟其它的任務(wù) 異步訪問:瀏覽器在向服務(wù)器發(fā)送請求時,不耽誤用戶在網(wǎng)頁上做其它的操作 使用場合: 1.用戶名的重復(fù)驗證 2.聊天室 3.股票走勢圖 4.搜索框建議(百度,京東)
2.AJAX
1.Asynchronous Javascript And Xml 異步的 js 和 xml 2.本質(zhì): 使用js提供的異步對象(XMLHttpRequest),異步的向服務(wù)器發(fā)送請求, 并接受響應(yīng)數(shù)據(jù)(數(shù)據(jù)格式是Xml) AJAX請求中,服務(wù)器響應(yīng)回來的數(shù)據(jù)部分數(shù)據(jù)而不是完整的頁面, 并且可以以無刷新的效果來更改頁面的局部內(nèi)容。 3.創(chuàng)建XMLHttpRequest對象-異步對象(xhr) 標準創(chuàng)建: var xhr=new XMLHttpRequest(); IE8以下: var xhr=new ActiveXObject("Microsoft.XMLHttp"); 允許通過window.XMLHttpRequest 來判斷瀏覽器是否支持標準創(chuàng)建, 如果瀏覽器不支持標準創(chuàng)建,那么window.XMLHttpRequest的值就是null if(window.XMLHttpRequest){ var xhr=new XMLHttpRequest(); }else{ var xhr=new ActiveXObject("Microsoft.XMLHttp"); } 4.XHR常用方法和屬性(重點) 1.open() 作用:創(chuàng)建請求 語法:xhr.open(method,url,isAsyn); 1.method string類型 請求方式:get/post 2.url string類型 請求地址 3.isAsyn boolean類型 指定采用同步(false)還是異步(true)的方式發(fā)送請求 2.readyState 屬性 作用:表示xhr對象的請求狀態(tài) 值:0-4表示5個狀態(tài) 0:請求尚未初始化 1:已經(jīng)打開到服務(wù)器的鏈接,正在發(fā)送請求中 2:請求完成 3.正在接收服務(wù)器端的響應(yīng) 4.接收響應(yīng)數(shù)據(jù)成功 注意:當readyState的值為4的時候,才表示所有的響應(yīng)都已經(jīng)接收完畢。 3.status 屬性 作用:表示的是服務(wù)器的響應(yīng)狀態(tài)碼 值: 記住一個值 :200 當status的值是200的時候,表示服務(wù)器已經(jīng)正確的處理請求以及給出響應(yīng)。 4.onreadystatechange事件 作用:當xhr的readyState屬性值發(fā)生改變的時候,要自動激發(fā)的操作 (xhr對象的狀態(tài)在做一些改變時,這個事件會一直監(jiān)視著它) 語法: onreadystatechange=function(){ //判斷xhr的readyState為4并且xhr的status值為200,就可以獲取/響應(yīng)數(shù)據(jù)了 if(xhr.readyState==4&&xhr.status==200){ //接收響應(yīng)回來的結(jié)果 var resText=xhr.responseText; console.log(resText); } } 5.send() 作用:發(fā)送請求 語法:xhr.send(body) body:請求主體 如果沒有請求主體,body位置處為null(get) 如果有請求主體,則放請求主體數(shù)據(jù)到body位置(post) 5.發(fā)送異步請求的步驟 1.創(chuàng)建xhr對象 2.創(chuàng)建請求 3.設(shè)置xhr的onreadystatechange(回調(diào)函數(shù)) 判斷狀態(tài),并接收響應(yīng)回來的數(shù)據(jù) 4.發(fā)送請求5.使用ajax發(fā)送post請求
注意兩點:
1.post的請求將數(shù)據(jù)放在請求主體中 xhr.send(body); ex: xhr.send("uname=value1&upwd=value2"); 2.在發(fā)送請求之前,需要手動修改請求消息頭 xhr.setRequestHeader("Content-Type","application/x-www-form-urlencoded");6.js對象數(shù)據(jù)格式
1.js對象的數(shù)據(jù)格式
var lindaiyu=[]; lindaiyu[0]="林黛玉"; lindaiyu[1]="1990"; lindaiyu[2]="160cm"; lindaiyu[3]="50kg"; 改版: var lindaiyu=[]; lindaiyu["name"]="林黛玉"; lindaiyu["birth"]="1990"; lindaiyu["height"]="160cm"; lindaiyu["weight"]="50kg"; ex:取值 lindaiyu["name"] 數(shù)組描述的是林黛玉的個人信息,如果你把林黛玉看成是一個對象,
那么她的個人信息就是她這個對象的屬性。
js對象的語法: var 對象名={ 屬性:值, 屬性:值, 屬性:值, 屬性:值 }; ex:林黛玉這個對象所對應(yīng)的屬性如下 var lindaiyu={ name:"林黛玉", birth:"1990", height:"160cm", weight:"50kg", } 如果對象取值的時候,直接對象.屬性 名稱就可以 ex:lindaiyu.name --->林黛玉7.JSON
1.什么是JSON JavaScript Object Notation js 對象 表現(xiàn)方式 js對象表示法,即以js對象的格式表現(xiàn)出來的字符串。 2.JSON語法 1.JSON對象 1.用一對{}來表示一個對象 2.對象的屬性名稱,必須用""引起來(單引號不可以),值如果是字符串的話,必須也用""引起來。 ex: var computer="{ "name":"電腦", "price":5600 }" 2.JSON數(shù)組 1.普通數(shù)組 "["小喬","大喬","貂蟬"]" 2.對象數(shù)組 "[ { "name":"小喬", "height":"160cm", "age":18 }, { "name":"大喬", "height":"163cm", "age":20 }, { "name":"貂蟬", "height":"165cm", "age":21 } ]" 3.JSON文件創(chuàng)建 以.json為后綴的文件,里面包含的是符合json格式的數(shù)據(jù) 4.將JSON字符串,轉(zhuǎn)換成js對象/數(shù)組 var mperson="{"name":"TOM","age":18}"; //json對象 var arr="["小喬","大喬","貂蟬"]"; //json數(shù)組 var arr1="[ {"name":"Lucy","age":19}, {"name":"Lily","age":19} ]"; //json數(shù)組 如何把上面的數(shù)據(jù)轉(zhuǎn)換成js對象/數(shù)組格式 1.使用eval()將數(shù)據(jù)轉(zhuǎn)換成js對象數(shù)組(不推薦) 2.使用JSON.parse()來將JSON字符串解析為js對象 var obj=JSON.parse(mperson); //js對象 var obj=JSON.parse(arr);//js數(shù)組 var obj=JSON.parse(arr1);//js數(shù)組
2.JS對象數(shù)據(jù)格式
var 對象名={
屬性:值, 屬性:值, 屬性:值
}
取值:對象名稱.屬性
3.JSON數(shù)據(jù)格式
var person="{
"name":"TOM", "age":12
}"
4.將JSON格式的數(shù)據(jù)轉(zhuǎn)換js對象/數(shù)組
1.eval()
2.JSON.parse
4.1在php中,可以直接將數(shù)組轉(zhuǎn)換成json格式的字符串
語法:
通過json_encode()將數(shù)組轉(zhuǎn)換為JSON字符串,并返回轉(zhuǎn)換后的結(jié)果 ex: 在php中 $array=["釘釘","當當","冰冰"]; $str=json_encode($array);8.XML
AJAX:Asynchronous Javascript And Xml
1.什么是XML
eXtensible Markup Language 可擴展的 標記 語言 XML的標記沒有被預(yù)定義過,需要自定義 XML的宗旨是做數(shù)據(jù)傳遞的,而非顯示數(shù)據(jù)
2.XML的語法結(jié)構(gòu)
XML可以獨立保存為***.xml的文件,也可以以字符串的形式出現(xiàn) 1.XML的最頂端是XML的聲明 2.XML標記的語法 1.XML標記必須成對出現(xiàn)錯誤 2.XML嚴格區(qū)分大小寫,開始和結(jié)束必須一致 正確 錯誤 3.XML的標記允許被嵌套,注意嵌套順序 4.每個標記都允許自定義屬性,格式與html一致,但屬性值,必須用""括起來 5.每個XML文檔,必須有一個根元素
3.解析XML文檔對象的內(nèi)容
1.核心方法 elem.getElementsByTagName("標簽名稱"); 返回值:返回一個包含指定元素們的“類數(shù)組” (用for循環(huán)遍歷) ex:var xmlDoc=xhr.responseXML; xmlDoc.getElementsByTagName("Student");
4.在PHP中返回XML格式的字符串
1.必須增加響應(yīng)消息頭 header("Content-Type:application/xml"); 2.按照XML的語法結(jié)構(gòu),拼xml字符串,再響應(yīng)給前端
$xml=""; $xml.=""; ... $xml.=" "; echo $xml;
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://specialneedsforspecialkids.com/yun/92875.html
摘要:今天同學(xué)去面試,做了兩道面試題全部做錯了,發(fā)過來給道典型的面試題前端掘金在界中,開發(fā)人員的需求量一直居高不下。 排序算法 -- JavaScript 標準參考教程(alpha) - 前端 - 掘金來自《JavaScript 標準參考教程(alpha)》,by 阮一峰 目錄 冒泡排序 簡介 算法實現(xiàn) 選擇排序 簡介 算法實現(xiàn) ... 圖例詳解那道 setTimeout 與循環(huán)閉包的經(jīng)典面...
摘要:希望幫助更多的前端愛好者學(xué)習(xí)。前端開發(fā)者指南作者科迪林黎,由前端大師傾情贊助。翻譯最佳實踐譯者張捷滬江前端開發(fā)工程師當你問起有關(guān)與時,老司機們首先就會告訴你其實是個沒有網(wǎng)絡(luò)請求功能的庫。 前端基礎(chǔ)面試題(JS部分) 前端基礎(chǔ)面試題(JS部分) 學(xué)習(xí) React.js 比你想象的要簡單 原文地址:Learning React.js is easier than you think 原文作...
摘要:責(zé)編現(xiàn)代化的方式開發(fā)一個圖片上傳工具前端掘金對于圖片上傳,大家一定不陌生。之深入事件機制前端掘金事件綁定的方式原生的事件綁定方式有幾種想必有很多朋友說種目前,在本人目前的研究中,只有兩種半兩種半還有半種的且聽我道來。 Ajax 與數(shù)據(jù)傳輸 - 前端 - 掘金背景 在沒有ajax之前,前端與后臺傳數(shù)據(jù)都是靠表單傳輸,使用表單的方法傳輸數(shù)據(jù)有一個比較大的問題就是每次提交數(shù)據(jù)都會刷新頁面,用...
摘要:最近遇到的前端面試題更新版前端掘金個人博客已上線,歡迎前去訪問評論無媛無故的個人博客以下內(nèi)容非本人原創(chuàng),是整理后覺得更容易理解的版本,歡迎補充。 一道面試題引發(fā)的對 javascript 類型轉(zhuǎn)換的思考 - 前端 - 掘金 最近群里有人發(fā)了下面這題:實現(xiàn)一個函數(shù),運算結(jié)果可以滿足如下預(yù)期結(jié)果: ... 收集 JavaScript 各種疑難雜癥的問題集錦 - 前端 - 掘金 從原博客遷移...
摘要:最近遇到的前端面試題更新版前端掘金個人博客已上線,歡迎前去訪問評論無媛無故的個人博客以下內(nèi)容非本人原創(chuàng),是整理后覺得更容易理解的版本,歡迎補充。 一道面試題引發(fā)的對 javascript 類型轉(zhuǎn)換的思考 - 前端 - 掘金 最近群里有人發(fā)了下面這題:實現(xiàn)一個函數(shù),運算結(jié)果可以滿足如下預(yù)期結(jié)果: ... 收集 JavaScript 各種疑難雜癥的問題集錦 - 前端 - 掘金 從原博客遷移...
摘要:最近遇到的前端面試題更新版前端掘金個人博客已上線,歡迎前去訪問評論無媛無故的個人博客以下內(nèi)容非本人原創(chuàng),是整理后覺得更容易理解的版本,歡迎補充。 一道面試題引發(fā)的對 javascript 類型轉(zhuǎn)換的思考 - 前端 - 掘金最近群里有人發(fā)了下面這題:實現(xiàn)一個函數(shù),運算結(jié)果可以滿足如下預(yù)期結(jié)果: ... 收集 JavaScript 各種疑難雜癥的問題集錦 - 前端 - 掘金從原博客遷移過來...
閱讀 1069·2023-04-25 14:35
閱讀 2831·2021-11-16 11:45
閱讀 3421·2021-09-04 16:48
閱讀 2187·2021-08-10 09:43
閱讀 532·2019-08-30 13:17
閱讀 1627·2019-08-29 13:27
閱讀 892·2019-08-26 13:58
閱讀 2157·2019-08-26 13:48