JavaSpcript初識

---恢復內容開始---javascript

1-語法標準(Ecmascript)css

DOMhtml

BOMjava

 

2=特色以及適用範圍編程

簡單易用:封裝好了一些方法,屬性數組

基於對象瀏覽器

面向對象: 屬於編程思惟(思想)dom

                   C#,C++,Java,PHP.....異步

基於對象:async

 

3-解釋執行

編譯執行:(C#)

                   C#(源代碼===)》編譯(.dll文件)===》計算機執行dll文件

解釋執行:JS特色(代碼直接執行)

 

4-寫法

內嵌式寫法寫在head標籤裏

<script type="css/javascript">

<script>

外聯式寫法

後綴名.js

引用<spript type="text/javascript src="""><spript>

 

5-補充屬性

 async:異步

注意:該屬性指的是瀏覽器將外部JS文件下載完成後,立馬執行。

defer:延時執行

注意:該屬性值值得是瀏覽器將外部JS文件下載完成後按順序執行。

行內(不經常使用)

<div onclick=「」***「」></div>

<!DOCTYPE html>
<html lang="en">
          <head>
          <meta charset="utf-8">
          <script type="css/javascript" src="1.js" async></script>
          <script type="text/javascript">
                     alert(1)(括號裏若是寫漢字或者字母 須要帶引號)
                     alert(1)
                     alert(1)
</head>
<!DOCTYPE html>
<html lang="en">
          <head>
          <meta charset="utf-8">
<script>alert(1)</script>
<script>alert(2)</script>
<script>alert(3)</script>
          <script type="css/javascript" src="1.js" defer></script>
          <script type="text/javascript">
                     alert(4)
                     alert(5)
                    
</head>

 

---恢復內容結束---

1-語法標準(Ecmascript)

DOM

BOM

 

2=特色以及適用範圍

簡單易用:封裝好了一些方法,屬性

基於對象

面向對象: 屬於編程思惟(思想)

                   C#,C++,Java,PHP.....

基於對象:

 

3-解釋執行

編譯執行:(C#)

                   C#(源代碼===)》編譯(.dll文件)===》計算機執行dll文件

解釋執行:JS特色(代碼直接執行)

 

4-寫法

內嵌式寫法寫在head標籤裏

<script type="css/javascript">

<script>

外聯式寫法

後綴名.js

引用<spript type="text/javascript src="""><spript>

 

5-補充屬性

 async:異步

注意:該屬性指的是瀏覽器將外部JS文件下載完成後,立馬執行。

defer:延時執行

注意:該屬性值值得是瀏覽器將外部JS文件下載完成後按順序執行。

行內(不經常使用)

<div onclick=「」***「」></div>

<!DOCTYPE html>
<html lang="en">
          <head>
          <meta charset="utf-8">
          <script type="css/javascript" src="1.js" async></script>
          <script type="text/javascript">
                     alert(1)(括號裏若是寫漢字或者字母 須要帶引號)
                     alert(1)
                     alert(1)
</head>
<!DOCTYPE html>
<html lang="en">
          <head>
          <meta charset="utf-8">
<script>alert(1)</script>
<script>alert(2)</script>
<script>alert(3)</script>
          <script type="css/javascript" src="1.js" defer></script>
          <script type="text/javascript">
                     alert(4)
                     alert(5)
                    
</head>

 6-JS中經常使用的輸出消息的方式

經過alert(123)或者(「」字母「」或者「」漢字「」)

經過document.write(「」你好");

注意:該方法中還能夠設置html標籤

document.write(「」<h1>你好</h1>「」);

在控制檯中輸出消息

console.log(123);

console.log("你好");

接受用戶輸入信息

prompt(「」請輸入您的姓名「」);

肯定取消方法

confirm(「」肯定退出麼?「」)

 7-變量(重點)

變量:會變化的量(數據)用來存儲數據的容器

變量定義:var 變量名 = 值 ;

注意1 首先定義變量必須使用var 關鍵字

       2 「」=「」 賦值運算符

        3 一個變量只能保存一個值(只能保存最後一個賦值結果)

變量命名規範

不推薦使用漢字定義變量

不能使用特殊字符或者特殊字符開頭

不能使用數字或者以數字開頭定義變量

變量中間不能出現空格

不能使用關鍵字定義變量

不推薦使用保留字定義變量

注意:1一行完整的代碼結束後必須以;結束

           2 JS中區分字母大小寫

 

8-數據類型介紹

數據類型是用來肯定變量的存儲位置

常見的數據類型:

1.數字類型(number)

若是一個變量的值是純數字,那麼該變量的數據類型就是數字類型

數字類型的表示方式有

十進制、十六進制(0X開頭 0-f)、八進制(以0開頭 0-7)

2.字符串類型(string)

 若是一個變量的值使用雙引號或者單引號,那麼該變量的數據類型就是字符串類型。

字符串特性:不可變性。(在內存中的不可變,不是值不可變)(注意不要大量拼接字符串)

屬性:變量.lengh 獲取字符串長度

轉義字符(瞭解)

\" 轉雙引號 \'轉單引號     成對出現 例:alert(「今天學習了\「  js  \」  」);

\r回車符

\n換行符

3.布爾類型(boolean)

 若是一個變量的值是true或者false 那麼該變量的數據類型就是布爾類型 

對象(object)

看獲得,摸得着,特徵具體事物

//封裝//繼承//多態

1屬性(特徵)

2方法(功能)

建立對象

var 變量 = new Object()

 

var xw=new Object();

      xw.name="小王";

      xw.age=18;

      xw.shengao=180;

//功能  函數(方法)

xw.say=function() {

          alert("你好");}

 

console.log(xw.name+xw.age+xw.shengao);

 

經過字面量建立對象

 var xw={

       name:"小王",

       age:18,

       shengao:180};

 

數組(array)

 

undefined類型

若是一個變量的值是unddefined或者定義了一個變量沒有給該變量賦值。那麼該變量的數據類型就是undefined。

例子:變量在沒有賦值的狀況下,那麼該變量的默認值就是undefined,對應的數據類型undefined類型。

例子var = 1

       var n2 

   alert(n2);

 

比較運算符

大於  >

小於  <

等於  ==或者===    一個=屬於賦值運算符

不等於  !==

大於等於  =>

小於等於  <=

注意:1經過比較運算符獲得的是一個布爾類型的結果

           2通常狀況下true表明正確的(條件成立),false表明錯誤的(條件不成立)

 

算數運算符

加  +

(1若是是數字類型的變量相加,最後結果也是數字類型

    2若是是非數字類型的變量相加,最後的結果是字符串【加號起到的做用是鏈接做用】)

減   -   

(1若是是數字類型變量相減,最後的結果是數字類型

    2若是是數字的字符串相減,最後的結果是數字【因爲:隱式數據類型轉化】

    3若是是非數字的字符串相減,最後獲得的結果是NaN【NaN:not a number】)

乘  * 

除  /

(1若是是數字類型的變量相除,最後的結果是數字類型

    2若是除數是0,獲得的結果是無窮大的值infinite)

 取餘  %   

()優先級

 

數據類型判斷

typeof(變量)===>用alert(typeof(X));來肯定結果是什麼數據類型

注意:1若是一個變量的值是NaN,那麼該變量的數據類型就是number類型。

           2若是一個變量的值是infinity,那麼該變量的數據類型是number類型。

           3若是一個變量的值是undefined,那麼該變量的數據類型是undefined類型。

 

isNaN()判斷是否是一個數字

 

新內容學習

1-Maht對象

Math.ceil(x)  對數字進行向上舍入(天花板函數)

          注意:1該方法返回的是一個大於當前數字,而且與它接近的一個整數。

                     2若是當前數字是一個整數,那麼返回的就是當前數字自己

Math.floor(x) 對數字進行向下舍入(地板函數)同天花板函數

Math.abs(x)  返回數字的絕對值

Math.radom()  返回0-1之間的隨機數

                 注意:該方法不能取到0和1

Math.max(x,y) 返回X和Y之間的最大值

         min(x,y)返回最小值

Math.round(x) 返回X的四捨五入值

        注意:該方法返回的是一個整數

Math.pow(x,y) 返回X的Y次方

 

2-數據類型轉換

           1隱式轉換

             程序在參與運算的過程當中,發生的數據轉換

          2 顯式轉換(強制轉換)

             工程師指定的具體數據類型

 

將數字類型轉化爲字符串類型

1經過變量 .toString()

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<script type="text/javascript">
 
               var n1=123;
               alert(typeof(n1));

               //數據類型轉化
               n1=n1.toString();

               alert(n1);
               alert(trpeof(n1));
</script></head>

 

2經過String()轉化爲字符串類型

將toSting行代碼轉化爲   n1=String(n1)

 

字符串類型轉成數字類型

1Number()  

特色:轉化爲數字類型,保留原來值的內容

<script type="text/javascript">

var n1="123";

      n1=Number(n1);
 
      alert(n1);
      alert(typeof(n1));

2pasrInt(x)  特色:轉化爲整數,但只能保留整數部分。

3parseFloat(x)  特色:經過該方法能夠轉換爲數字類型,可是要保留原來的內容。

                                    2若是是非數字的字符串,直接保留數字部分

 

轉化爲布爾類型

Boolean(x)  注意1 數字0,空字符串,NaN,undefined,null轉化爲false

                           2除以上特殊值,轉布爾類型都是true    ture是1  0是false是規定

 

3-邏輯運算符

或運算              ||

注意:經過邏輯運算符要連接布爾類型的結果。

與(且)運算   &&

非                    !

 

4-等於逗號運算符

= 賦值   == 相等:只判斷值不判斷數據類型  === 相等:同時判斷值和數據類型  !=不相等

,運算符    var n1=123,n2=123;

 

5-分支結構(條件判斷)

 語法  if(條件表達式){邏輯代碼;}

          else{邏輯代碼;}

執行順序:首先進行條件判斷,若是條件成立(true),那麼程序執行if語句中的代碼,反之else

 

6-斷點調試

做用:獲取程序中的執行過程,排查錯誤。

使用:首先運行程序》點擊審查元素》點sources 在瀏覽器中打開代碼點擊html頁面》設置斷點》再次運行程序或者F5

          》點擊下一步或者F10

監視變量:1鼠標直接懸停變量 2 右鍵變量 添加監視變量。ADD~~WATCH

 

7-條件結構嵌套

語法:if(條件表達式){}else if (條件表達式){}else if{} else{}

執行順序:首先進行表達式判斷,若是條件爲true那麼就當即執行,若是條件爲false那麼執行else中的代碼

 

8-三元運算

語法:條件表達式?  代碼1:代碼2;

執行順序:若是條件成立執行代碼1,若是條件不成立執行代碼2

注意:1三元表達式能夠嵌套,通常不推薦使用。

var n1=prompt("請輸入一個數字」);

//若是用if else寫
       if(n1%2==0){
       alert("偶數");}
       else{
       alert(「奇數」);}//
//用三元運算//
      n1%2==0?alert("偶數"):alert("奇數");
       

 

9-Switch(變量){

              case  值1:

                     代碼例如alert(n1)

              break;

              case  值2:

                     代碼

              break;}

注意1在Switch語句中,Switch中的變量數據類型必須與case後面的值的數據類型保持一致。

       2通常狀況下,若是變量表示的不是一個範圍,而是一些具體值,能夠考慮使用Switch結構

簡寫方式

switch(fname){ case"2":  case"4": case"6";  alert("偶數"); break; 

 

變量自增自減

var i =7;

變量自增:i++或者++i 例如J=i++的結果是J=i  若是是J=++i 就是 j==i+1

變量自減

 

循環

while循環

語法:初始化變量  var  a=1;

          while(條件表達式){

          循環體代碼;}

執行過程:1變量初始化 2開始判斷條件 3 若是條件爲true,那麼程序會進入循環體代碼  4若是條件爲false,那麼程序不會進入循環體中循環代碼

do  while循環

語法:初始化變量  

           do{

                   循環體;}

           while(條件表達式)

執行順序:1首先執行do中的代碼  2而後判斷條件是否成立  3若是條件成立,則繼續成立do中的代碼  4若是條件不成立,那麼程序結束。

與while循環的區別:在條件不知足的狀況下,do while要比while循環多執行一次。

 

for循環

語法:     for(變量初始化;表達式;變量自增或自減){

                       循環體代碼;}

執行過程:1變量初始化 2進行表達式判斷 3 若是表達式成立,執行循環體中代碼,而後進行變量自增或自減繼續判斷表達式成立,若是成立則繼續    4 若是表達式不成立,則程序結束

例子:打印直角三角形

forvar i=1;i<=9;i++){

        for(var j=1;j<=i;j++){
              document.write("*");}
        document.write("<br>");
}

 

建立表格

<style type="text/css">
table{width:400px;height:300px;border=collapse;}

table,td{border:1px solid red;}

<script type="text/javascript">
document.write("<table>");
//建立行tr
for(var i=1;i<=4;i++){
          document.write("<tr>")
     for(var j=1;j<=i;j++)
          document.write("<td></td>")

document.write("</tr>")
document.write("</table>")

 

break和continue語句

break:在循環中使用break語句,程序會跳出當前循環

例子:找出1-10中第一個是2的倍數

for(var i=1;i<=10;i++){
      for(i%2==0){
           alert(i);
           break; } }

continue

結束本次循環,進入下次循環,continue後面的代碼不會執行

例子:輸出1-10全部數字 不包括6

for(var i=1;i<=10;i++){
         if(i==6){
            continue;
}
             alert(i);
}

 

 

數組

數組能夠一次保存多個值

定義數組:

*經過對象方式建立數組

var ary=new Array();

直接建立一個數組

var ary=[ ];’

 

數組賦值:

經過索引(下標)賦值 注意:數組中索引 號(編號)從0開始

 var  ary=[];

ary[0]=1;

console.log(ary);

數組遍歷:

<script type="text/javascripe">

           var ary=[1,2,3,4,5,6,7,8];
 
           alert(ary.length);//獲取數組長度

           for(var i=0;i<ary.length;i++){

           alert(ary[i]);}
</script>

數組中的方法補充

1 合併兩個數組經過concat,經過該方法返回的是一個新數組,數據類型object

var ary1=[xxxx] ~~~2=[~~~]   var ary3=ary1.concat(ary2);

alert(ary3);

2 join 更改數組顯示方式,經過該方法的獲得的是一個字符串類型

var ary=[1,2,3];

ary=ary.join("|");

alert(typeof(ary));

相關文章
相關標籤/搜索