javaScript基礎—imooc

1、     Js基礎

1.1     運算符

算術操作符(+-*/)

比較操作符(<>>=<=)

邏輯操作符(&&||、!)

注意: “=” 操作符是賦值,不是等於。

+JS中可以表示字符串的連接和數學運算

1.2 自加一,自減一( ++和- -)

mynum = mynum + 1;//等同於mynum++

mynum = mynum - 1;//等同於mynum—

1Number+Number 輸出:Number(數字加數字,輸出數字)
2
Number+String 輸出:String(數字加字符串,輸出字符串)
3
Boolean轉換成數01,支持數字運算
4
null轉換成字符串“null”,邏輯運算的“false”或數字運算“0”
附:
如果是字符串,使用String(),數字使用Number();
比如:jq3=Number("33")+22;輸出的是55,而不是“3322”
jq3=Number(22)+"33"
;或者jq3=Number(22)+String(33);輸出的是“2233”,不是55

1.2邏輯與操作符

b>a && b<c    //“&&”是並且的意思, 讀法"b大於a"並且" b小於c "兩邊值同時滿足(同時爲真),整個表達式值才爲真
b>a || b<c    //“||”是或的意思         當兩個條件中有任一個條件滿足,整個表達式成立
邏輯非操作符:"!"是邏輯非操作符,也就是"不是"的意思,非真即假,非假即真

操作符之間的優先級(高到低):

算術操作符比較操作符 邏輯操作符 → "="賦值符號

S中變量聲明分顯式聲明和隱式聲明

var  i=100;  //顯示

 

1

i=100;  //隱式

在函數中使用var關鍵字進行顯式申明的變量是做爲局部變量,而沒有用var關鍵字,使用直接賦值方式聲明的是全局變量。

當我們使用訪問一個沒有聲明的變量時,JS會報錯。而當我們給一個沒有聲明的變量賦值時,JS不會報錯,相反它會認爲我們是要隱式申明一個全局變量,這一點一定要注意。

a++是先執行表達式後再自增,執行表達式時使用的是a的原值。
++a
是先自增再執行表達示,執行表達式時使用的是自增後的a

2、       數組

1注意:數組每個值有一個索引號,從0開始。

我們還可以用簡單的方法創建上面的數組和賦值:

第一種方法:

var myarray = new Array(66,80,90,77,59);//創建數組同時賦值

第二種方法:

 var myarray = [66,80,90,77,59];//直接輸入一個數組(稱字面量數組

 

 

3、循環語句

1、

Switch必須賦初始值,值與每個case值匹配。滿足執行該 case 後的所有語句,並用break語句來阻止運行下一個case。如所有case值都不匹配,執行default後的語句。

var myweek =13;//myweek表示星期幾變量

switch(myweek)

{

 case 1:

 case 2:

 document.write("學習理念知識");

 break;

 case 3:

 case 4:

 document.write("到企業實踐");

 break;

 case 5:

 document.write("總結經驗");

 break;

 default:

 document.write("週六、日休息和娛樂");

}

2               assets/views/mvc/login_content.js

 

 

4、Onclick等事件

事件響應網頁交互,JavaScript 創建動態頁面。事件是可以被 JavaScript 偵測到的行爲。

網頁中的每個元素都可以產生某些可以觸發 JavaScript 函數或程序的事件。

3               

4         

5          onmouseover="message()"

6                

4.1編程練習

使用JS完成一個簡單的計算器功能。實現2個輸入框中輸入整數後,點擊第三個輸入框能給出2個整數的加減乘除。

 

<!DOCTYPE html>

<html>

 <head>

  <title> 事件</title> 

  <script type="text/javascript">

   function count(){      

    //獲取第一個輸入框的值

         //獲取第二個輸入框的值

         //獲取選擇框的值

         //獲取通過下拉框來選擇的值來改變加減乘除的運算法則

    //設置結果輸入框的值

    var a = document.getElementById("txt1").value;

    var b = document.getElementById("txt2").value;

    var sel = document.getElementById("select").value;

    var d ="";  

       switch(sel){

           case "+":

           d=parseInt(a)+parseInt(b);

           break;

           case "-":

           d = a-b;

           break;

           case  "*":

           d = a*b;

           break;

           default:

           d = a/b;                 

       }

       document.getElementById("fruit").value = d;

   }

  </script>

 </head>

 <body>

   <input type='text' id='txt1' />

   <select id='select'>

                   <option value='+'>+</option>

                   <option value="-">-</option>

                   <option value="*">*</option>

                   <option value="/">/</option>

   </select>

   <input type='text' id='txt2' />

   <input type='button' value=' = ' onclick="count()"/> <!--通過 = 按鈕來調用創建的函數,得到結果-->

   <input type='text' id='fruit' />  

 </body>

</html>

 

 

5、      js內置對象

5.1 JavaScript中的所有事物都是對象,如:字符串、數值、數組、函數等,每個對象帶有屬性方法

對象的屬性:反映該對象某些特定的性質的,如:字符串的長度、圖像的長寬等;

對象的方法:能夠在對象上執行的動作。例如,表單的提交”(Submit),時間的獲取”(getYear)等;

JavaScript 提供多個內建對象,比如 StringDateArray 等等,使用對象前先定義,

對象和方法解釋:對象相當於一個人,屬性就是性別,胖瘦,身高,是必須通過該對象來獲取的【值】;

方法是這個人可以幹什麼,吃飯,看電視,逛街,會運動,跳舞等,是必須通過該對象才能執行的【行爲】。

5.2 Date 日期對象

定義一個時間對象 :

月份是011  需要注意

var Udate=new Date(); 

注意:使用關鍵字newDate()的首字母必須大寫。 

getDay() 返回星期

例子:1、顯示今天星期幾? 設置日期,顯示星期幾?比如2016年3月29 週二

<!DOCTYPE HTML>

<html>

<head>

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

<title>獲得星期</title>

<script type="text/javascript">

  //var mydate=new Date();

 var mydate=new Date(2016,2,29);

  var weekday=["星期日","星期一","星期二","星期三","星期四","星期五","星期六"];

  var mynum = mydate.getDay()

   document.write(":" + mynum+"<br>");

  document.write("今天是:" + weekday[mynum]);

   document.write("今天是:" + weekday[mynum]);

</script>

</head>

<body>

</body>

</html>

5.3 String 字符串對象

  var a=  message.toUpperCase();  // 將字符串小寫字母變爲大寫

   var a = message.toLowerCase();  //將字符串大寫字母變爲小寫

返回指定位置的字符   stringObject.charAt(index)

1.     字符串中第一個字符的下標是 0。最後一個字符的下標爲字符串長度減一(string.length-1)。一個空格也算一個字符。

返回指定的字符串首次出現的位置stringObject.indexOf(substring, startpos)

var str="I love JavaScriptv!v"

   document.write(str.indexOf("I") + "<br />");

  document.write(str.indexOf("v") + "<br />");

  document.write(str.indexOf("v",10));  輸出 0 ,4 ,17

document.write(str.indexOf("v",10));  輸出9

 

字符串分割split()

提取字符串substring()

substring 方法用於提取字符串中介於兩個指定下標之間的字符

substring(start,end)

開始和結束的位置,從零開始的索引

substr 方法用於返回一個從指定位置開始的指定長度的子字符串。

substr(start [, length ])

如:

1

2

3

4

var ss,tt;

var mystr="Hello World!";

aa =  mystr.substr(5);   // world!

ss = mystr.substr(6, 5);  //6號字符後面取5個字符

tt = mystr.substring(6, 11);//取第6到第11之間的字符

5.4 Math對象

 

向上取整ceil()  Math.ceil(0.8) 輸出1

向下取整floor()

四捨五入round()

 document.write(Math.round(2.5)+ "<br>");

 document.write(Math.round(0.49)+ "<br>");

 document.write(Math.round(-6.6)+ "<br>");

輸出3;0;-7

隨機數 random()

random() 方法可返回介於 0 ~ 1大於或等於 0 但小於 1 )之間的一個隨機數。

使用random()隨機取得0-10之間的數值。使用round()對數值進行四捨五入。

var a ="";

a = Math.random()*10;

b = Math.round(a);

 document.write(a+"<br>");

 document.write(b);

 

5.5 數組

數組定義的方法:

1. 定義了一個空數組:

var  數組名= new Array();

2. 定義時指定有n個空元素的數組:

var 數組名 =new Array(n);

3.定義數組的時候,直接初始化數據:

var  數組名 = [<元素1>, <元素2>, <元素3>...];

我們定義myArray數組,並賦值,代碼如下:

var myArray = [2, 8, 6]; 

 

數組連接concat()

指定分隔符連接數組元素join()

var myarr = new Array(3);

  myarr[0] = "I";

  myarr[1] = "love";

  myarr[2] ="JavaScript";

 document.write(myarr.join("."));

顛倒數組元素順序reverse()

選定元素slice()  1.返回一個新的數組,包含從 start end (不包括該元素)的 arrayObject 中的元素。

一個數組,大小排序

   function sortNum(a,b) {

        return a-b;

   }

var myarr = newArray("80","16","50","6","100","1");

document.write(myarr.sort(sortNum));

//升序,如降序,把“a - b”該成“b - a”

 若返回值<=-1,則表示 A 在排序後的序列中出現在 B 之前。
 
 
若返回值>=1,則表示 A 在排序後的序列中出現在 B 之後。

= 不用管

題目:XXXXXXX星期X--班級總分爲:81 ,平均分多少?
成績:"小明:87; 小花:81; 小紅:97; 小天:76;小張:74;小小:94;小西:90;小伍:76;小迪:64;小曼:76"

 

 

<!DOCTYPE  HTML>

<html >

<head>

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

<title>繫好安全帶,準備啓航</title>

 

<script type="text/javascript">

  //通過javascript的日期對象來得到當前的日期,並輸出。

  var date = new Date();

  var a = date.getDay();

  var week = ["星期天 ","星期一","星期二","星期三","星期四","星期五","星期六"];

  document.write(date.getFullYear()+"年");

  document.write((date.getMonth()+1)+"月");

  document.write(date.getDate()+"日  ");

  document.write(week[a]+"<br>  "); 

 

  //成績是一長竄的字符串不好處理,找規律後分割放到數組裏更好操作哦

  var scoreStr = "小明:87;小花:81;小紅:97;小天:76;小張:74;小小:94;小西:90;小伍:76;小迪:64;小曼:76";

 var b = scoreStr.split(";")

 var sum = 0;

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

    {

      sum = sum + parseInt(b[i].slice(3));

    }

    var avg = sum /b.length;

  //從數組中將成績撮出來,然後求和取整,並輸出。

  document.write("--班級的總分爲:"+sum+"<br>");

  document.write("--班級的平均分:"+avg+"<br>");

 

</script>

</head>

<body>

</body>

</html>

 

 

 

6、標題1

 

7、標題1

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章