JavaSpcript初識


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

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>

 

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

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));

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM