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

web前端(四)——javascript高級

-c 引入 串處理 class clear world yaler 對象 ring

數組

定義數組的方法

//對象的實例創建
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();

web前端(四)——javascript高級