【php基礎班】第11天 複習、二維數組、數組方法、字符串對象、Math對象、date對象

第一節 複習

1.函數

函數的定義:

function函數名(形式參數1,形式參數2,。。。。。。){//函數體 return}

參數:參數的形式必須一一對應,而且,在定義的時候那個形式參數(變量名),調用函數的時候(實際參數),必須是值

Return:1)終止函數,2)返回值

Firebug:查看函數的運行

2.函數的作用域

作用域:1)全局變量(任何位置),2)局部變量(函數內部)

函數調用:函數名(實際參數1,實際參數2.。。。。。);var 變量名=函數名();

函數名命名:1)不能和系統內部關鍵字相同,2)函數名有意義

系統內部函數:parseInt,parseFloat,isNaN,isFinite,NaN

3.遞歸

遞歸:函數調用函數本身,注意讓函數有條件

函數出現的位置:出現在任意位置

4.數組

格式:var arr=[12,34,45];

下標:下標從0開始,數字個數-1

補充知識點:

   If(){//語句塊

   Document.write();

Document.write();

Document.write();

I++;++I;

Sum+=I;

}

   For(){

      //循環體

Document.write();

Document.write();

Document.write();

I++;++I;

Sum+=I;

}

For(){}=》break(continue//跳出);

Break:跳出循環不再執行

   For(){

      For(){//break}

}

Continue:跳出當前次循環

   For(var i=0;i<=9;i++){

if(i%2==0){

continue;

}else{

Document.write(i);

}

}

數組:

若干數據的集合

語法:

   var arr=[1,2,3];

vararr=new Array(1,2,3);

數組擴展:

   Var arr1=[23,12,56];

   Var arr2=[45,23,22];

   Var arr3=[34,34,99];

Vararr=[arr1,arr2,arr3];

   Arr=[

        [23,12,56],

         [45,23,22],

        [34,24,99]

]

4.作業講解


第二節 二維數組

二維數組:數組內部數據爲數組

23[0][0]

12[0][1]

56[0][2]

45[1][0]

23[1][1]

22[1][2]

34[2][0]

34[2][1]

99[2][2]

Varnum1=arr[0][0];

Varnum2=arr[2][1];

Varnum3=arr[2][2];

案例求二維數組的和:

/求數組中所有項的和

      var arr=[

              [23,45,23,45,23],

              [45,35,67,4355,23],

              [34,56,2322,56569,234]

           ];

      //var arr=[23,23,43,435,236];

      var sum=0;

      for(var i=0;i<arr.length;i++){//i是外面數組的下標

        for(var j=0;j<arr[i].length;j++){//j是裏面數組的下標

           sum=sum+arr[i][j];

        }

      }

      document.write("二維數組的和爲:"+sum);

二維數組練習

求最大值和下標

var arr=[

[34,45,3,23],

[43,34,435,34324],

[334,54,34,999],

[45,34,56,234,54,6456,324,324,546,235,234],

[224,456,546,234,32,34,234,324,234],

[24,56,324,234,546,45,324]

];

var max=arr[0][0];

var xiabiao1=0;

var xiabiao2=0;

for(var i=0;i<arr.length;i++){//循環外面的數組

for(var j=0;j<arr[i].length;j++){//循環裏面的數組

if(max<arr[i][j]){//做比較找最大值

max=arr[i][j];//把大的值賦值給max

xiabiao1=i;//找到下標

xiabiao2=j;//找到下標

}

}

}

document.write("最大值爲:"+max+"下標爲:"+xiabiao1+","+xiabiao2);

 

第三節 數組方法

數組排序:

把數據有序的排列起來

Vararr=[23,435,456,67,65];

選擇排序:在數組中找出最大值,放到數組最後一個元素,把最後位置原數據放到最大值的位置(交換)(假如從小到大排序)

元數組

23

435

456

67

65

第一次

23

435

65

67

456

第二次

23

67

65

435

456

第三次

23

65

67

435

456

第四次

23

65

67

435

456

Arr[4]65和arr[2]456

Vartemp=arr[4];

Arr[4]=arr[2]

Arr[2]= Temp

數組方法:

vararr=[324,435,23];

vararr1=[1,2,3];

vararr2=[4,5,6];

arr.concat(數據);把數據連接起來

arr.join(“字符”);得到的是字符串,以字符連接數組數據得到的

arr.pop();刪除數組最後一項並且返回

arr.reverse();把數組的順序翻轉

第四節 字符串對象

字符串方法:

Varstr=”abcdefgab”;//簡寫形式

Varstr=new String(”abcdefgab”);//標準形式

Varstr=” abcdefgab”;

Str.indexOf(“字符”);可以獲得這個“字符“的第一個下標

   如果字符串中找不到要找的字符,那麼返回的就是-1

Str.lastIndexOf(“字符”); 以獲得這個“字符“的最後出現下標

Str.toUpperCase:轉換爲大寫形式

Str.toLowerCase:轉換爲小寫形式

CharCodeAt(數);獲得制定位置的Unicode編碼

   記住:小寫a=97,大寫A=65;

charAt(數);獲得這個數的位置的字符

substr(數字1,數字2)//截取字符串,如果只有一個數字,從數字開始截取到最後,如果有

              兩個數字,從數字1截取數字2個

Substring(數字1,數字2);//如果只有一個數字截取到最後,如果有兩個,就是從數字1開始到數字2之前,但是不會包含數字2,如果數字1和數字2從小到大或者從大到小放的位置不同,那麼默認的從最小的數開始找

varstr="abcdefabc";

   var n1=str.indexOf("cdef");

   var n2=str.lastIndexOf("bc");

   var n3=str.toUpperCase();

   var n4=str.toLowerCase();

   var n5=str.charCodeAt(2);

   var n6=str.charAt(3);

   var n7=str.substr(3,3);

   var n8=str.substring(3,7);

   document.write(n8);*/

   //basdjkj.png

   function check(){

   //獲得字符串的後綴

   //加入允許上傳的文件類型[jpg,png,gif]

   varzhaopian=document.getElementById("wenjian").value;//zhaopian="bomdom.jpg";

   var n=zhaopian.lastIndexOf(".");

   var houzhui=zhaopian.substr(n+1);

   houzhui=houzhui.toLowerCase();

   if(houzhui=="jpg"||houzhui=="png"||houzhui=="gif"){

   alert("您可以上傳啦");

   }else{

   alert("照片太醜重新上傳哦");

   }

}

案例:

限制用戶上傳文件類型

 

Varstr=Document.getElementById(“id名”);通過id獲得某個標籤

str.value;獲得str的value值

識別方法和屬性:

屬性:對象.屬性名;

方法:對象.方法名();

第五節 Math對象:

Math.pow(n1,n2);求n1的n2次方

Math.abs(n);求n的絕對值

Math.round(n);求n的四捨五入的值

Math.max(n1,n2。。。);可以放好多個參數,求這些參數的最大值

Math.min();求最小值

Math.floor(n);向下取整,不大於n的最大的整數

Math.floor(3.1);

Math.floor(3.9);

Math.floor(3.5);

Math.floor(3.6);

Math.floor(3.2);

Math.ceil(n);向上取整,不小於n的最小的整數

Math.ceil(3.4);

Math.ceil(3.9);

Math.ceil(5.2);

Math.ceil(6.4);

Math.ceil(9.4);

Math.random();獲得0和1之間隨機數,注意:能包含0不包含1

案例:
   1)找到0到10之間的隨機數Math.random()*10=>得到0到10之間的隨機數

找到0到20之間的隨機數Math.random()*20=>得到了0到20之間的隨機數

找到0到60之間的隨機數Math.random()*60=>得到了0到20之間的隨機數

找到6個10到30的隨即數字=》(0到20)+10

找到6個20到60的隨即數字=》(0到40)+20

找到6個30到90的隨即數字=》(0到60)+30

Math.floor(Math.random()*(大數-小數+1))+小數;

第一步:得到0到1之間的數字(取不到1)

第二步:得到求0到任意數字間的隨機數Math.random()*n

第三部:Math.random()*大數-小數

第四部:乘以任意的數字,得到的最大值向下取整後是這個數字-1

第五步:乘以任意數字+1,就能得到最大值向下取整後得到這個數字

第六步;Math.floor(Math.random()*(大的-小的+1))+小數

特殊字符:

“,’,\,\r,換行\n回車,\t,tab符號

第六節 時間日期對象:

Vard1=new Date();//創建當前時間

Vard2=new Date(“2015/11/15 17:29:36”)//創建指定;

Vard3=new Date(2015,11,15,17,29,39);//創建制定時間(月份數字是0到11之間)

Vard4=new Date(13345478456745);//毫秒數時間

D1.toLocaleString();

varyear=d1.getFullYear();//獲得年份

varmonth=d1.getMonth();//獲得月份

vardate=d1.getDate();//獲得日期

varday=d1.getDay();//獲得星期

varhours=d1.getHours();//獲得消失

varminute=d1.getMinutes();//獲得分鐘數

varsecond=d1.getSecond();//獲得秒數

varmillisecond=d1.getMilliseconds();//獲得毫秒數(0到999)

vartimeshijian=d1.getTime();

設置時間:

D1.setFullYear(n);

D1.setMonth(n);

D1.setDate(n);

D1.setDay(n);

D1.setHours(n);

D1.setMinutes();

D1.setSeconds();

D1.setMilliSeconds()


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