JS基礎(chǔ)知識(shí)點(diǎn)搜集

最近接觸到JS的知識(shí)帕翻,在網(wǎng)上搜集了一些前輩們總結(jié)的資料,以供后面學(xué)習(xí)參考萝风。

1嘀掸、javascript語法

a、javascript的變量名规惰、函數(shù)睬塌、運(yùn)算符是區(qū)分大小寫的

b、變量是弱類型的歇万,ECMAScript不像Java揩晴,C++。ECMAScript中的變量無特定的類型贪磺。定義變量用var硫兰。

c、每行結(jié)尾的“寒锚;”可以有也可以沒有

d瞄崇、javascript注釋是"/*js content */"

2、javascript變量

a壕曼、javascipt中定義變量是:var test="hello js";(其中var 是 variable的縮寫苏研。)并且給test變量初始值為“hello?js”

b、ECMAjavascipt中定義變量可以不初始化腮郊。如:var test;

c摹蘑、javascipt的變量是弱類型的,所以變量可以存儲(chǔ)不同類型的值轧飞。如:var test="hello js"; test=123;

d衅鹿、變量名規(guī)則:第一個(gè)字符必須是字母撒踪、下劃線、或者是美無符號(hào)($)

e大渤、變量名的命名規(guī)則

》Camel標(biāo)記法--首字母小寫的制妄,接下來的單詞都以大寫字母開頭

例:var myTestValue; var myResult;

》Pascal標(biāo)記法--首字母是大寫的,接下來的單詞都以大寫字母開頭

例:var MyTestValue; var MyResult;

》匈牙利標(biāo)記法--在以Pascal標(biāo)記法的基礎(chǔ)上泵三,在變量前面添加一個(gè)小寫字母說明該變量的類型耕捞。

例:var iMyTestValue =55; var sMyResult="Hello js";

3、原始值烫幕,引用值(參考http://fehacker.com/2014/12/19/call-by-sharing/提供的講解)

a俺抽、原始值

比如Undefined,Null,Boolean,Number,String。存儲(chǔ)在棧(stack)中的簡(jiǎn)單數(shù)據(jù)段较曼,也就是說磷斧,它們的值直接存儲(chǔ)在變量訪問的位置。這是因?yàn)檫@些原始類型占據(jù)的空間是固定的捷犹,所以可將他們存儲(chǔ)在較小的內(nèi)存區(qū)域 - 棧中弛饭。這樣存儲(chǔ)便于迅速查尋變量的值。

b萍歉、引用值

也就是對(duì)象類型 Object type,比如Object,Array,Function,Date等孩哑。存儲(chǔ)在堆(heap)中的對(duì)象,也就是說翠桦,存儲(chǔ)在變量處的值是一個(gè)指針(point),指向存儲(chǔ)對(duì)象的內(nèi)存地址胳蛮。這是因?yàn)椋阂弥档拇笮?huì)改變销凑,所以不能把它放在棧中,否則會(huì)降低變量查尋的速度仅炊。相反斗幼,放在變量的棧空間中的值是該對(duì)象存儲(chǔ)在堆中的地址抚垄。地址的大小是固定的蜕窿,所以把它存儲(chǔ)在棧中對(duì)變量性能無任何負(fù)面影響。

4呆馁、幾個(gè)重要的原始類型

a桐经、Undefined 類型

此類型只有一個(gè)值即:undefined。當(dāng)聲明變量未初始化時(shí)浙滤,該變量的值為undefined阴挣。

即:var test;alert(test);則輸出undefined。

注意:值undefined并不同于未定義的值纺腊。但是:typeof運(yùn)算符并不真正的區(qū)分這兩種值請(qǐng)關(guān)注以下代碼:

var oTemp;

alert(typeof oTemp); 輸出 “undefined”;

alert(typeof oTemp2); /*沒有任何地方定義oTemp2*/ 輸出"undefined";

但是在沒有定義變量的情況下卻不可以這樣使用:alert(oTemp2 == undefined);//這會(huì)產(chǎn)生一個(gè)錯(cuò)誤:變量未定義

當(dāng)函數(shù)沒有明確返回值畔咧,那么這個(gè)函數(shù)的返回值默認(rèn)為:undefined茎芭。

b、Null類型

Null類型也只有一個(gè)專用值null誓沸,值undefined其實(shí)是從null派生來的梅桩,因此:

alert(null == undefined); //輸出true

此二值雖然相等,但是其含義并不相同拜隧。undefined是聲明了變量宿百,但對(duì)其初始化時(shí)并未給該變量賦值;null則用于表示尚未存在的對(duì)象虹蓄。如果函數(shù)的返回值為對(duì)象犀呼,那么當(dāng)找不著對(duì)象時(shí)則返回的通常是null。

c薇组、Boolean類型

Boolean類型有兩個(gè)值true/false外臂。

在類型轉(zhuǎn)換過程中:空字符串 == false;數(shù)字÷烧汀0==false 宋光;非零數(shù)字和非空字符串== true;

默認(rèn)情況下:"null==true/false"均返回false,"undefined==true/false"也返回false

var oFalseObject = new Boolean(false);

var result =?oFalseObject && true;//此處最終結(jié)果是 true炭菌,因?yàn)榇颂巃nd 操作會(huì)自動(dòng)將oFalseObject對(duì)象轉(zhuǎn)換為true罪佳,而不是取此對(duì)象的值。所以此處返回值是true;

強(qiáng)類型轉(zhuǎn)換時(shí):var b = new Boolean(null); 則b的最終結(jié)果是false; var b = new Boolean(undefined);亦然

5黑低、函數(shù)

函數(shù)是一組隨時(shí)隨地可以運(yùn)行的語句赘艳,由關(guān)鍵字function、一組參數(shù)克握、以及置于括號(hào)內(nèi)的代碼組成的蕾管。

如果函數(shù)未使用return 語句或者使用了空的return;語句那么此函數(shù)的返回值是undefined.

在ECMAScript中函數(shù)是不可以重載的,如果在同一區(qū)域有兩個(gè)函數(shù)使用了相同的名稱菩暗,不會(huì)引發(fā)錯(cuò)誤掰曾,但是當(dāng)代碼執(zhí)行的時(shí)候真正使用的是第二個(gè)函數(shù)。

arguments對(duì)象:代函數(shù)代碼中停团,可以使用特殊對(duì)象旷坦,開發(fā)者不用明確指出此參數(shù)名,就能訪問他們佑稠。arguments便是整個(gè)函數(shù)的所有參數(shù)列表數(shù)組秒梅。


閱讀拓展:

http://www.jb51.net/article/21457.htm

http://www.cnblogs.com/huajs/archive/2011/11/05/2237091.html

http://blog.sina.com.cn/s/blog_6fd4b3c10101dpv2.html

http://www.jb51.net/article/47699.htm

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市舌胶,隨后出現(xiàn)的幾起案子番电,更是在濱河造成了極大的恐慌,老刑警劉巖,帶你破解...
    沈念sama閱讀 218,941評(píng)論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件漱办,死亡現(xiàn)場(chǎng)離奇詭異这刷,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)娩井,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,397評(píng)論 3 395
  • 文/潘曉璐 我一進(jìn)店門暇屋,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人洞辣,你說我怎么就攤上這事咐刨。” “怎么了扬霜?”我有些...
    開封第一講書人閱讀 165,345評(píng)論 0 356
  • 文/不壞的土叔 我叫張陵定鸟,是天一觀的道長(zhǎng)。 經(jīng)常有香客問我著瓶,道長(zhǎng)联予,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,851評(píng)論 1 295
  • 正文 為了忘掉前任材原,我火速辦了婚禮沸久,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘余蟹。我一直安慰自己卷胯,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,868評(píng)論 6 392
  • 文/花漫 我一把揭開白布威酒。 她就那樣靜靜地躺著窑睁,像睡著了一般。 火紅的嫁衣襯著肌膚如雪葵孤。 梳的紋絲不亂的頭發(fā)上担钮,一...
    開封第一講書人閱讀 51,688評(píng)論 1 305
  • 那天,我揣著相機(jī)與錄音佛呻,去河邊找鬼。 笑死病线,一個(gè)胖子當(dāng)著我的面吹牛吓著,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播送挑,決...
    沈念sama閱讀 40,414評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼绑莺,長(zhǎng)吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來了惕耕?” 一聲冷哼從身側(cè)響起纺裁,我...
    開封第一講書人閱讀 39,319評(píng)論 0 276
  • 序言:老撾萬榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎,沒想到半個(gè)月后欺缘,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體栋豫,經(jīng)...
    沈念sama閱讀 45,775評(píng)論 1 315
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,945評(píng)論 3 336
  • 正文 我和宋清朗相戀三年谚殊,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了丧鸯。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 40,096評(píng)論 1 350
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡嫩絮,死狀恐怖丛肢,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情剿干,我是刑警寧澤蜂怎,帶...
    沈念sama閱讀 35,789評(píng)論 5 346
  • 正文 年R本政府宣布,位于F島的核電站置尔,受9級(jí)特大地震影響杠步,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜撰洗,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,437評(píng)論 3 331
  • 文/蒙蒙 一篮愉、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧差导,春花似錦试躏、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,993評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至助析,卻和暖如春犀被,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背外冀。 一陣腳步聲響...
    開封第一講書人閱讀 33,107評(píng)論 1 271
  • 我被黑心中介騙來泰國打工寡键, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人雪隧。 一個(gè)月前我還...
    沈念sama閱讀 48,308評(píng)論 3 372
  • 正文 我出身青樓西轩,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國和親脑沿。 傳聞我的和親對(duì)象是個(gè)殘疾皇子藕畔,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,037評(píng)論 2 355

推薦閱讀更多精彩內(nèi)容

  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理,服務(wù)發(fā)現(xiàn)庄拇,斷路器注服,智...
    卡卡羅2017閱讀 134,660評(píng)論 18 139
  • 《ijs》速成開發(fā)手冊(cè)3.0 官方用戶交流:iApp開發(fā)交流(1) 239547050iApp開發(fā)交流(2) 10...
    葉染柒丶閱讀 5,163評(píng)論 0 7
  • 第一章: JS簡(jiǎn)介 從當(dāng)初簡(jiǎn)單的語言韭邓,變成了現(xiàn)在能夠處理復(fù)雜計(jì)算和交互,擁有閉包溶弟、匿名函數(shù)女淑, 甚至元編程等...
    LaBaby_閱讀 1,673評(píng)論 0 6
  • 啊湖閱讀 107評(píng)論 0 0
  • 導(dǎo)語 花落花開無間斷,春來春去不相關(guān)可很。牡丹最貴惟春晚诗力,芍藥雖繁只夏初。唯有此花開不厭我抠,一年長(zhǎng)占四時(shí)春苇本。——宋·蘇軾...
    陌上桑青閱讀 942評(píng)論 -9 33