1. 程式人生 > >web前端(四)——javascript高階

web前端(四)——javascript高階

陣列

定義陣列的方法

//物件的例項建立
var aList = new Array(1,2,3);

//直接量建立(首選)
var aList2 = [1,2,3,'asd'];

  

運算元組中資料的方法

//獲取陣列的長度
var aList = [1,2,3,4];
alert(aList.length); // 彈出4

//用下標運算元組的某個資料 var aList = [1,2,3,4]; alert(aList[0]); // 彈出1

//將陣列成員通過一個分隔符合併成字串 var aList = [1,2,3,4]; alert(aList.join('-')); // 彈出 1-2-3-4

//從陣列最後增加成員或刪除成員
var aList = [1,2,3,4]; aList.push(5); alert(aList); //彈出1,2,3,4,5 aList.pop(); alert(aList); // 彈出1,2,3,4

//將陣列反轉 var aList = [1,2,3,4]; aList.reverse(); alert(aList); // 彈出4,3,2,1

//返回陣列中元素第一次出現的索引值 var aList = [1,2,3,4,1,3,4]; alert(aList.indexOf(1));

//在陣列中增加或刪除成員 var aList = [1,2,3,4]; aList.splice(2,1,7,8,9); //從第2個元素開始,刪除1個元素,然後在此位置增加'7,8,9'三個元素 alert(aList); //彈出 1,2,7,8,9,4
//多維陣列指的是陣列的成員也是陣列的陣列
var aList = [[1,2,3],['a','b','c']]; alert(aList[0][1]); //彈出2;

  

 

 

迴圈語句

for迴圈

for(var i=0;i<len;i++)
{
    ......
}

//陣列去重 var aList = [1,2,3,4,4,3,2,1,2,3,4,5,6,5,5,3,3,4,2,1]; var aList2 = []; for(var i=0;i<aList.length;i++) { if(aList.indexOf(aList[i])==i) { aList2.push(aList[i]); } } alert(aList2);

  

 

 

 

字串處理方法

//字串合併操作:“ + ”
var iNum01 = 12;
var iNum02 = 24;
var sNum03 = '12';
var sTr = 'abc';
alert(iNum01+iNum02);  //彈出36
alert(iNum01+sNum03);  //彈出1212 數字和字串相加等同於字串相加
alert(sNum03+sTr);     // 彈出12abc


//將數字字串轉化為整數 var sNum01 = '12'; var sNum02 = '24'; var sNum03 = '12.32'; alert(sNum01+sNum02); //彈出1224 alert(parseInt(sNum01)+parseInt(sNum02)) //彈出36 alert(parseInt(sNum03)) //彈出數字12 將字串小數轉化為數字整數


//將數字字串轉化為小數 var sNum03 = '12.32' alert(parseFloat(sNum03)); //彈出 12.32 將字串小數轉化為數字小數


//把一個字串分隔成字串組成的陣列 var sTr = '2017-4-22'; var aRr = sTr.split("-"); var aRr2= sTr.split(""); alert(aRr); //彈出['2017','4','2'] alert(aRr2); //彈出['2','0','1','7','-','4','-','2','2']


//查詢字串是否含有某字元 var sTr = "abcdefgh"; var iNum = sTr.indexOf("c"); alert(iNum); //彈出2


//擷取字串 用法: substring(start,end)(不包括end) var sTr = "abcdefghijkl"; var sTr2 = sTr.substring(3,5); var sTr3 = sTr.substring(1); alert(sTr2); //彈出 de alert(sTr3); //彈出 bcdefghijkl


//字串反轉 var str = 'asdfj12jlsdkf098'; var str2 = str.split('').reverse().join(''); alert(str2);

  

除錯程式的方法

  1、alert

  2、console.log

  3、document.title

 

 

 

定時器

定時器型別及語法

定時器:
  setTimeout  只執行一次的定時器 
  clearTimeout 關閉只執行一次的定時器
  setInterval  反覆執行的定時器
  clearInterval 關閉反覆執行的定時器



var time1 = setTimeout(myalert,2000);
var time2 = setInterval(myalert,2000);

clearTimeout(time1);
clearInterval(time2);

function myalert(){
    alert('ok!');
}

  

 

 

封閉函式

  封閉函式是javascript中匿名函式的另外一種寫法,建立一個一開始就執行而不用命名的函式。

(function(){
    alert('hello!');
})();

//還可以在函式定義前加上“~”和“!”等符號來定義匿名函式

!function(){
    alert('hello!');
}()

 

 

 

封閉函式的作用

  封閉函式可以創造一個獨立的空間,在封閉函式內定義的變數和函式不會影響外部同名的函式和變數,可以避免命名衝突,在頁面上引入多個js檔案時,用這種方式新增js檔案比較安全,比如

var iNum01 = 12;
function myalert(){
    alert('hello!');
}

(function(){
    var iNum01 = 24;
    function myalert(){
        alert('hello!world');
    }
    alert(iNum01);
    myalert()
})()

alert(iNum01);
myalert();