成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

javaScript一些基本概念

Wuv1Up / 1254人閱讀

摘要:操作符包括算數(shù)操作符加號減號等,位操作符,關(guān)系操作符和相等操作符。語法此語法會導(dǎo)致性能下降,不建議使用。所有傳遞都是值的傳遞,沒有值的自動賦予值。

1、
可一次定義多變量(,號分隔)
var message = "h1", found = false, age = 20;
3、數(shù)據(jù)類型:
5種基本數(shù)據(jù)類型 : undefined,Null,Boolean,Number,String;
1種復(fù)雜數(shù)據(jù)類型 : Object;
使用 typeof 可檢測變量的數(shù)據(jù)類型
例 : Alert( typeof(message) ) // "String";
typeof 為操作符不是函數(shù),所以可以省略 ()
typepf null // Object;
4、Undefined : 定義但未賦初值。
var message;
alert(message); // undefined
alert(age); // error
5、NUll類型: 一個空對象指針
alert(null == undefiend) // true
6、Boolean類型.
true不一定等于1,false也不一定等于0.
大小寫敏感。
可對任何變量使用轉(zhuǎn)型函數(shù) Boolean。
轉(zhuǎn)換規(guī)則:


if語句自動轉(zhuǎn)換:
var message = "hello";
if(message) { //轉(zhuǎn)為true
alert ( "value id true");
}
7、Number 類型:

* 浮點數(shù)值 
    var float Num3 = .1   // 有效,但不推薦
* e 表示指數(shù)冪
    3.125 e7 ;  // 等于 3125000 : 3.125 * 10的7次冪        
    最高精度是17位小數(shù),計算精度不如整數(shù)。        
    例 : 0.1 + 0.2 ≠ 0.3  而是 等于 0.3000000……4。
    if (a+b == 0.3) { }      // 永遠不要用float做測試
* NaN : 即非數(shù)值,是一個特殊的數(shù)值

任何數(shù)除以非數(shù)值都返回NaN,因此不影響其他代碼執(zhí)行。
NaN 的兩個特點 :

任何涉及到NaN的操作都返回NaN,(如 NaN / 10)

NaN與任何值都不相等,包括本身。alet(NaN == NaN) ; //falseisNaN() ; 判斷是否“不是數(shù)值”。

數(shù)值轉(zhuǎn)換 : Number(),parseInt(),parseFloat();

對于任何類型可用第一個,后兩個用于字符串;
Number()轉(zhuǎn)換字符串復(fù)雜且不合理,處理整數(shù)用parseInt();處理浮點數(shù)用parserFloat();
例 : parseInt(“1234blue”); // 12348、String 類型

* 字符字面量 

/n : 換行 /t 制表 /r 回車

* 特點

不可變,只能銷毀重建。

* 轉(zhuǎn)為字符串

tostring() : null 和 undefined 沒有此方法,要用String()方法;
簡便轉(zhuǎn)換方法 : 值與字符串相加 (“ ”)。
注意 : 0.9 - "0.4" = 0.5 // 隱式類型轉(zhuǎn)換;
1 + “2” = "12";
9、Object 類型 : 一組數(shù)據(jù)和功能的組合
Object 類型是所有它的實例的基礎(chǔ),所具有的任何屬性和方法同樣存在更具體的對象中。每個實例都具有以下屬性和方法 :

* constructor() : 構(gòu)造函數(shù),保存著用于創(chuàng)造當(dāng)前對象的函數(shù);
* hasOwnProperty( property ) : 檢查給定屬性在當(dāng)前對象實例中(不是在原型中) 是否存在;
* isPropertyOf(object) : 對象是否是當(dāng)前對象原型;
* toLocalString() : 返回對象的字符串表示,與地區(qū)對應(yīng);
* toString() : 返回對象的字符串表示;
* valueof() : 返回對象的字符串、數(shù)值、布爾值表示,通常與tostring()一樣。 

10、操作符 包括算數(shù)操作符(加號、減號等),位操作符,關(guān)系操作符和相等操作符。

* 一元操作符

++i : i = i + 1; // 先自加再賦值

* 一元加減

該操作符對非數(shù)值應(yīng)用時,會像Number()轉(zhuǎn)型函數(shù)一樣對值進行轉(zhuǎn)換。
對對象先調(diào)用valueof和tostring方法。
可用于基本算數(shù)運算,也可以用于轉(zhuǎn)換數(shù)據(jù)類型。

* 位操作符

整數(shù)的補碼為本身,負數(shù)的補碼為取反加一;
按位 非 (NOT) : ~ 表示,反碼;
按位 與 (AND) : & 表示,同為1得1,其他為0;
按位 或 (OR) : | 表示,同為0得0,其他為1;
按位 異或 (XOR) : ^ 表示,同為0,異為1;
左移 : << 以0補位,32位;
有符號右移 : >> 保留符號位 0 : 正 1 : 負;
無符號右移 >>> 負數(shù)以絕對值二進制補碼表示;

* 布爾操作符 : 非(NOT)  與(AND)   或(OR)

邏輯非(!) :
可用于任何值,無論類型都返回布爾值,先轉(zhuǎn)為布爾值,再求反;
邏輯與(&) :
同真為真,其他為假;
短路操作:第一個能決定結(jié)果,后邊就不用求值,如第一個為false,結(jié)果直接為false;
邏輯或(||) :同假為假,其他為真有一個操作符不是布爾值,結(jié)果不一定返回布爾值;
與邏輯與一樣,短路運算;
可用短路邏輯為變量賦值避免賦null和undefined。如 : var result = (A || B) // 當(dāng)A不為null,賦值A(chǔ),否則為B;

* 乘性操作符

乘法 : (*)除法 : (/)求模 : (%) // 余數(shù)

* 加性操作符

5 + 5 = 10 5 + "5" = "55" "str" + 5 + 5 = "str55" "str" + (5 + 5) = "str10"

* 減性操作符 : 先進行隱式類型轉(zhuǎn)換(Number()): 注意轉(zhuǎn)換規(guī)則對number類型友好優(yōu)先

5 - "2" = 3 5 - true = 4 5 - "" = 5 NaN - 1 = NaN

* 關(guān)系操作符 : >   <   >=   <=

比較字符串時比較的事字符編碼值,例 : a 為 97 , B 為 66“B” < "a" // true "23" < 3 // true

* 相等操作符 : ==   !=   ===    !==

相等和不相等 ---- 先轉(zhuǎn)換再比較全等和不全等 ---- 比較但不轉(zhuǎn)換,比較數(shù)據(jù)類型

* 條件操作符(三目運算符)

A ? b : c // A為真時值為b,否則為c

* 賦值操作符 : =

= 右邊的值賦給左邊變量賦值復(fù)合操作符 : *= /= %= += -= <<= >>= >>>=

* 逗號操作符

一條語句執(zhí)行多個操作 : var num1 = 1 , num2 = 2,num3= 3;用于賦值時,總是返回表達式最后一個值 : var num = (5,1,4,8,0) //返回011、語句

* if語句 : 先用Boolean轉(zhuǎn)換

推薦使用代碼塊 : { }

* do - while 語句 : 后測試循環(huán)語句,循環(huán)內(nèi)代碼至少執(zhí)行一次

let i = 0;do {i +=2} while

* while語句 : 前測試循環(huán)語句,有可能不會被執(zhí)行

var i = 0;while(i<10){i += 2;}

* for語句 : var定義的變量會污染全局,之后盡量使用let
* var count = 10;

for(var i = 0;i < count;i++){alert(i);}alert(i); //10

* for-in語句 :

一種精準(zhǔn)的迭代語句,可用來枚舉對象屬性,例 : for(property in expression) {} 返回的屬性無序,因瀏覽器而異;

* label語句

可在代碼中加標(biāo)簽,以便將來使用 ;

* break 和 continue :

break直接跳出循環(huán),continue跳到下一次循環(huán);

* with語句 :

將代碼的作用域設(shè)置到一個特定對象中。語法 : with(expression){ } : 此語法會導(dǎo)致性能下降,不建議使用。

* switch語句 : 

switch(expression){ case value : statement break; default : statement}12、函數(shù)function functionName(org1,org2...){statements}

* 調(diào)用 : functionName();

可加return設(shè)置返回值;執(zhí)行return后停止并立即退出,位于return后的代碼永遠不會執(zhí)行。

* 理解參數(shù)

不介意傳遞的參數(shù)的種類和個數(shù),因內(nèi)部用數(shù)組來表示,函數(shù)體內(nèi)可以用arguments對象來訪問參數(shù)數(shù)組。命名參數(shù)只是提供便利,不是必須的,可在內(nèi)部判斷參數(shù)的長度完成重載。所有傳遞都是值的傳遞,沒有值的自動賦予undefined值。

* 沒有重載

重載:函數(shù)名相同,參數(shù)的數(shù)量和類型不同。es中定義兩個同名函數(shù),后者會覆蓋前者,通過檢查傳入?yún)?shù)的種類和數(shù)量可以模仿重載。

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/102850.html

相關(guān)文章

  • 你需要知道面試中的10個JavaScript概念

    摘要:自我學(xué)習(xí)目前有成千上萬的年輕人在學(xué)習(xí)和開發(fā),希望獲得一份工作。知道的綁定規(guī)則。知道和原型屬性是什么以及它們的作用。高階函數(shù)了解函數(shù)是中的一級對象,這意味著什么知道從另一個函數(shù)返回函數(shù)是完全合法的。了解閉包和高階函數(shù)允許我們使用的情況。 翻譯原文出處:10 JavaScript concepts you need to know for interviews 之前不是鬧得沸沸揚揚的大漠窮...

    YacaToy 評論0 收藏0
  • 前端練級攻略(第二部分)

    摘要:是文檔的一種表示結(jié)構(gòu)。這些任務(wù)大部分都是基于它。這個實踐的重點是把你在前端練級攻略第部分中學(xué)到的一些東西和結(jié)合起來。一旦你進入框架部分,你將更好地理解并使用它們。到目前為止,你一直在使用進行操作。它是在前端系統(tǒng)像今天這樣復(fù)雜之前編寫的。 本文是 前端練級攻略 第二部分,第一部分請看下面: 前端練級攻略(第一部分) 在第二部分,我們將重點學(xué)習(xí) JavaScript 作為一種獨立的語言,如...

    BWrong 評論0 收藏0
  • 基礎(chǔ)鞏固:JavaScript基礎(chǔ)總結(jié)(基本概念篇)

    摘要:基礎(chǔ)鞏固基礎(chǔ)總結(jié)使用已經(jīng)好幾年了,由于工作主要是做服務(wù)端開發(fā),在工作中逐漸發(fā)現(xiàn)的使用范圍原來越廣泛。這里要注意,務(wù)必將基礎(chǔ)部分掌握牢靠,磨刀不誤砍柴功,只有將基礎(chǔ)部分掌握并建立起系統(tǒng)的知識體系,在后面學(xué)習(xí)衍生的其他模式才能游刃有余。 基礎(chǔ)鞏固:JavaScript基礎(chǔ)總結(jié) 使用JavaScript已經(jīng)好幾年了,由于工作主要是做服務(wù)端開發(fā),在工作中逐漸發(fā)現(xiàn)JavaScript的使用范圍原...

    YuboonaZhang 評論0 收藏0
  • 【譯】前端練級攻略

    摘要:由于系統(tǒng)變得越來越復(fù)雜,人們提出了稱為預(yù)處理器和后處理器的工具來管理復(fù)雜性。后處理器在由預(yù)處理器手寫或編譯后對應(yīng)用更改。我之前建議的文章,,也涵蓋了預(yù)處理器相關(guān)的知識。 譯者:前端小智 原文:medium.freecodecamp.org/from-zero-t… medium.freecodecamp.org/from-zero-t… 我記得我剛開始學(xué)習(xí)前端開發(fā)的時候。我看到了很多文章及...

    wuyumin 評論0 收藏0
  • javascript入門教程(一):基本概念

    摘要:本文建議有基礎(chǔ)的人看,由于內(nèi)容過多,所以建議配合高級程序設(shè)計服用。一共由三部分組成,分別是最新版本是,簡稱,,。 本文建議有html基礎(chǔ)的人看,由于js內(nèi)容過多,所以建議配合《javascript高級程序設(shè)計》服用。 在開始前我先簡單介紹一下javascript這門語言吧。 javascript誕生于1995年,主要是用來表單的驗證,雖然名字里面有java,但是和java毫無關(guān)系,甚至...

    Michael_Lin 評論0 收藏0

發(fā)表評論

0條評論

最新活動
閱讀需要支付1元查看
<