JavaScript相關記錄

  1. construtor和super;this.functionName = this.functionName.bind(this)
    contrutor(props)和super(props)一般是要么不出現重付,要么同時出現鹃唯,意義實際上就是繼承古程,前者就是一個一般意義的構造函數,相當于es5里面的
    function FucntionName(props){
    this.props = props;
    }
    super (props)則是繼承父類的屬性绣版。

2.state稱為狀態(tài)渲染機,

3.react+redux的主體流程:
(1)通過action獲得model(數據),并將其作為state存儲到store
(2)傳遞給react component,按照莫中設計呈現model數據涉波,
(3)調用action發(fā)起update請求,從而調用reducer生成新的state存儲到store中
(4)redux 通知react component重新render

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />

<meta name="viewport" content="width=device-width,inital-scale=1.0,minimum-scale=1.0,maximum-scake=1.0,user-scalable=no" />

<meta name="apple-mobile-web-app-capable" content="yes" />

<meta name="apple-mobile-web-status-bar-style" content="block" />

<meta name="fromat-detecition" content="telephone=no" />

<link rel="stylesheet" type="text/css" href="css/base.css" />

<link rel="stylesheet" type="text/css" href="css/content.css" />

<link rel="stylesheet" type="text/css" href="css/main.css" />
<title></title>
<script type="text/javascript" src="lib/jquery-1.8.2.min.js"></script>

<script type="text/javascript" src="lib/base.js"></script>
</head>
<body>
</body>
</html>

4.websocket與http
websocket是HTML5出的協議茂装,是一個持久化的協議怠蹂,相對于http這種非持久的協議來說。
http的生命周期通過request來界定少态,也就是一個request一個response,這次請求就結束了易遣。
websocket是基于http協議的彼妻,或者說借用了http的協議來完成一部分握手。
典型的websocket握手:
GEt /chat HTTP/1.1
Host: server.example.com
Upgrade: websocket /告訴服務器,我發(fā)起的是websocket協議/
Connetion: Upgrade
Sec-Websocket-Key: x3JJHMbDL1EzLkh9GBhXDw== /至是瀏覽器隨機生成的侨歉,告訴服務器屋摇,驗證是否是websocket/
Sec-Websocket-Protocol: chat, superchat /用戶自定義的字符串,/
Sec-Websocket-Version: 13
Origin: http://example.com

然后服務器返回下列幽邓,表示已經接受到請求炮温,成功建立websocket
HTTP/1.1 101 Switching Protocols
Upgrade: websocket
Connection: Upgrade /告訴客戶,已經成功切換協議啦/
Sec-Websocket-Accpet: HSmrc0sMlYUkAGmm5OPpG2HaGWk= /服務器/
Sec-Websocket-Protocol: chat

websocket的出現服務器端可以主動推送信息給客戶端(彼此相互推送信息)牵舵。解決了要反復解析HTTP協議柒啤。
websocket API使用:
//創(chuàng)建一個socket實例
var socket = new Websocket('ws://localhost:8080');
//打開socket
socket.onopen = function(event){
//發(fā)送一個初始化消息
socket.send('I am the client and I'm listening!);
//監(jiān)聽消息
socket.onmessage = function(event){
console.log('client received a message', event);
}
//監(jiān)聽socket的關閉
socket.onclose = function(event) {
console.log('client notified socket has closed', event);
}
//關閉socket
socket.close();

}

5.單頁面應用
單頁面應用利用js實現了頁面的動態(tài)化,用戶使用時基本感知不到網頁是如何實現的畸颅,
react-router,讓你的單頁面應用支持頁面的跳轉以及動態(tài)渲染

function convert(source){
var tmp = {}, parent, n;
for(n in source){
var item = source[n];
if(item.ID == item.ParentID){
parent = item.ID;
}
if(!tmp[item.ID]){
tmp[item.ID] = {};
}
tmp[item.ID].Name = item.Name;
tmp[item.ID].ID = item.ID;
if(!('children' in tmp[item.ID])) {
tmp[item.ID].children = [];
}
if(item.ID!=item.ParentID){
if(tmp[item.ParentID]){
tmp[item.ParentID].children.push(tmp[item.ID]);
}
else {
tmp[item.ParentID] = {children:[tmp[item.ID]]};
}
}
}
return tmp[parent];
}

6.數組的方法
(1)splice()用于插入担巩,刪除或替換數組的元素
(2)for,map没炒,forEach的區(qū)別涛癌?
傳遞給map()的函數應該有返回值,返回的是新數組送火;

7.http?
(1)method:
get 請求獲取request-URL所標識的資源
post 在request-URL所標識的資源后附加新的數據, 常用表單提交
head
put
delete
options
(2)狀態(tài)碼
1XX:指示信息--表示請求已接收拳话,繼續(xù)處理
2XX:成功--表示請求已被接收、理解种吸、接受
3XX:重定向--要完成請求必須進行更一步的操作
4XX:客戶端錯誤--請求有語法錯誤或者請求無法實現
5XX:服務器端錯誤--服務器未能實現合法的請求

8.正向代理弃衍?反向代理?

9.jquery的ajax
$(document).ready(function){
$('#b01').click(function(){
htmlobj = $.ajax({url: 'jquery/test1.txt',async:false});
$('#myDiv').html(htmlobj.responseText);
})
}

10.http的header里面包含哪些字段骨稿,每個字段都有哪些含義笨鸡?

content-type,host,origin,referer,user-Agent,accept,
Accept-Encoding指定瀏覽器可以支持的web服務器返回內容壓縮編碼類型。
Accept-Language,connection,

11.JSONP請求坦冠?
function getJSONP(url, callback){
var cbnum = 'cb' + getJSONP.counter++;
var cbname = 'getJSONP.' + cbnum;

if (url.indexOf('?') === -1){
    url += '?=jsonp' + cbname;
}
else {
    url += '&jsonp' + cbname;
}
var script = document.createElement('script');
getJSONP[cbnum] = function(response){
    try{
        callback(response);
    }
    finally{
        delete.getJSONP[cbname];
        script.parentNode.removeChild(script);
    }
}
script.src = url;
document.body.appendChild(script);

}
getJSONP.counter = 0;
描述:
(1)將回調函數名添加到URL查詢部分形耗,
(2)創(chuàng)建script標簽;
(3)定義將被腳本執(zhí)行的回調函數辙浑,
(4)觸發(fā)http請求激涤;設置腳本的URL到src中,把該標簽添加到文檔中

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
  • 序言:七十年代末判呕,一起剝皮案震驚了整個濱河市倦踢,隨后出現的幾起案子,更是在濱河造成了極大的恐慌侠草,老刑警劉巖辱挥,帶你破解...
    沈念sama閱讀 217,084評論 6 503
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現場離奇詭異边涕,居然都是意外死亡晤碘,警方通過查閱死者的電腦和手機褂微,發(fā)現死者居然都...
    沈念sama閱讀 92,623評論 3 392
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來园爷,“玉大人宠蚂,你說我怎么就攤上這事⊥纾” “怎么了求厕?”我有些...
    開封第一講書人閱讀 163,450評論 0 353
  • 文/不壞的土叔 我叫張陵,是天一觀的道長扰楼。 經常有香客問我呀癣,道長,這世上最難降的妖魔是什么灭抑? 我笑而不...
    開封第一講書人閱讀 58,322評論 1 293
  • 正文 為了忘掉前任十艾,我火速辦了婚禮,結果婚禮上腾节,老公的妹妹穿的比我還像新娘忘嫉。我一直安慰自己,他們只是感情好案腺,可當我...
    茶點故事閱讀 67,370評論 6 390
  • 文/花漫 我一把揭開白布庆冕。 她就那樣靜靜地躺著,像睡著了一般劈榨。 火紅的嫁衣襯著肌膚如雪访递。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,274評論 1 300
  • 那天同辣,我揣著相機與錄音拷姿,去河邊找鬼。 笑死旱函,一個胖子當著我的面吹牛响巢,可吹牛的內容都是我干的。 我是一名探鬼主播棒妨,決...
    沈念sama閱讀 40,126評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼踪古,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了券腔?” 一聲冷哼從身側響起伏穆,我...
    開封第一講書人閱讀 38,980評論 0 275
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎纷纫,沒想到半個月后枕扫,有當地人在樹林里發(fā)現了一具尸體,經...
    沈念sama閱讀 45,414評論 1 313
  • 正文 獨居荒郊野嶺守林人離奇死亡辱魁,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 37,599評論 3 334
  • 正文 我和宋清朗相戀三年铡原,在試婚紗的時候發(fā)現自己被綠了偷厦。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片商叹。...
    茶點故事閱讀 39,773評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡燕刻,死狀恐怖,靈堂內的尸體忽然破棺而出剖笙,到底是詐尸還是另有隱情卵洗,我是刑警寧澤,帶...
    沈念sama閱讀 35,470評論 5 344
  • 正文 年R本政府宣布弥咪,位于F島的核電站过蹂,受9級特大地震影響,放射性物質發(fā)生泄漏聚至。R本人自食惡果不足惜酷勺,卻給世界環(huán)境...
    茶點故事閱讀 41,080評論 3 327
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望扳躬。 院中可真熱鬧脆诉,春花似錦、人聲如沸贷币。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,713評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽役纹。三九已至偶摔,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間促脉,已是汗流浹背辰斋。 一陣腳步聲響...
    開封第一講書人閱讀 32,852評論 1 269
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留瘸味,地道東北人宫仗。 一個月前我還...
    沈念sama閱讀 47,865評論 2 370
  • 正文 我出身青樓,卻偏偏與公主長得像硫戈,于是被迫代替她去往敵國和親锰什。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 44,689評論 2 354

推薦閱讀更多精彩內容

  • Spring Cloud為開發(fā)人員提供了快速構建分布式系統(tǒng)中一些常見模式的工具(例如配置管理丁逝,服務發(fā)現汁胆,斷路器,智...
    卡卡羅2017閱讀 134,654評論 18 139
  • Android 自定義View的各種姿勢1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 172,095評論 25 707
  • WebSocket簡介 談到Web實時推送霜幼,就不得不說WebSocket嫩码。在WebSocket出現之前,很多網站為...
    吧啦啦小湯圓閱讀 8,145評論 15 75
  • 望向高遠的天 不是我最愛的湛藍 而我依然要把你描摹成英雄的模樣 請你張開廣博的胸懷 接納我哭腫的雙眼 還有漫漫長夜...
    北斗星明閱讀 176評論 0 1
  • 散開及腰的長發(fā) 文/紫雨 我把及腰的長發(fā) 散開 放進初升的朝霞 輕叩著白衣的背影 撫慰夜的牽掛 我把及腰的長發(fā) 散...
    紫雨true閱讀 468評論 0 1