標籤:構造 屬性 個數 調用 cti 最大 固定 例子 通過
javascript函數
函數概念
將完成某一特定功能的代碼集合起來,可以重複使用
白話函數理解-函數就是一個工廠,幫大家實現某一個功能
優點
-時程式更加簡潔
-邏輯更有條例
-調用方便
-維護更加容易
函數的聲明方式(建立)
1.基本文法
function 關鍵字
function 函數名(【參數1】,【參數2】....){
函數體
【return】//傳回值
}
2.字面量定義的形式(匿名函數)
var 變數=function()(【參數1】,【參數2】....){
函數體
【return】//傳回值
}
例子:三角調用
//函數 //基本文法-聲明函數 function sanjiao() { for ( var i = 0; i < 5; i++ ) { for ( var j = 0; j < i; j++ ) { document.write( ‘*‘ ); } document.write( ‘<br/>‘ ); } } //調用函數 sanjiao(); sanjiao(); sanjiao();
用字面量的形式聲明函數
//字面量的形式聲明函數----使用比較多 var sanjiao = function () { for ( var i = 0; i < 5; i++ ) { for ( var j = 0; j < i; j++ ) { document.write( ‘*‘ ); } document.write( ‘<br/>‘ ); } } //調用函數 sanjiao(); sanjiao();
函數的調用方式
1.通過括弧來調用
-函數名();
2通過觸發事件來調用
-對象.事件=function(){}
那麼如何做函數呢,就是
1.先弄明白你要幹什麼。
2.搭建函數的架構
3.分析需要的原料(參數)
4.安排處理流程
//帶參數的函數 //建立處理平方的函數 function pingfang(num) { var re = num * num; alert(re); } //調用平方的函數 pingfang( 8 );
//帶兩個參數的函數
//計算乘積
function chengji( num1, num2 ) {
var re = num1 * num2;
alert( re );
}
chengji( 4, 5 );
chengji( 55, 8 );
形參:就是佔位置的沒有實際意義的參數
實參:調用時寫的實際參數。
return 表示函數的結束
如果函數沒有return,則傳回值是Undefined
變數的範圍
範圍:指的就是一段代碼的作用範圍
全域變數:
在頁面中任何地方都能夠訪問得到的變數,擁有全域性
1,函數的最外層定義的變數
2,沒有定義直接賦值的變數,擁有全域屬性
局部變數
只能在固定的程式碼片段(函數片段中訪問到)
1,函數內部定義的變數,就是局部變數(在函數內部用var聲明的變數叫做局部變數,只有在內部能被操作)
2,參數也是局部變數
可以提高程式的邏輯性和安全性,減少名稱的衝突
當一個函數當做另一個函數的參數,那麼當參數的函數就叫做回呼函數
//function pingfang( num ) { // var re = num * num; // alert( re ); //} //function fn() { // return 5; //} //pingfang(fn());
javascript內建頂層函數
內建:ECMAscript內建的函數,把用的一些函數封裝起來,我們不需要知道怎麼實現的,只需要知道怎麼調用
頂層:在頁面當中的任何地方都可以調用,就相當於全域變數的作用,在什麼地方都能調用這個函數
三個常見的內建頂層函數
1.Number() 轉換成數實值型別
var re = Number(‘123‘);
alert( re );
2.parseInt() 將字串轉換成整型
var re = parseInt( ‘123.456‘ );
alert( re );
//可以轉Number轉不了的資料
var re = parseInt( ‘100px‘ );
alert( re );
4.isNaN() 判斷一個數是否不能轉為數實值型別(判斷一個資料是不是非數字(不能轉成數字))
javascript數組
數組是一個可以儲存一組或是一系列相關資料
為什麼使用數組
1.解決大量相關資料的儲存和使用為題
2.便於程式的開發和維護
聲明建立數組
隱形聲明的方式
賦值
直接賦值 var a=[1,2,3];
聲明後賦值 var a=[]; a[0]=1; a[1]=2;
通過對象來聲明
var a=new Array(元素1,元素2,元素3...)
聲明後賦值
var a=new Array();a[0]=1; a[1]=2;
但是講的對象,就是屬性和方法的集合
那麼裡面的屬性其實就是變數,方法就是函數
隱形聲明的方式
var shuiguo = [‘蘋果‘,‘香蕉‘,‘鴨梨‘,‘火龍果‘,‘西瓜‘,‘葡萄‘,‘蛇皮果‘]; //alert( shuiguo.length ); alert(shuiguo[2]);
通過建構函式建立數組 數組的遍曆和特點
一般數組。length-1就是數組的最大的下標
建構函式就是一套規則,通過建構函式建立的具體的東西就是對象
//建構函式建立數組
var shuiguo = new Array( ‘蘋果‘, ‘香蕉‘, ‘鴨梨‘, ‘火龍果‘, ‘西瓜‘, ‘葡萄‘, ‘蛇皮果‘ );
document.write(shuiguo[4]);
//數組追加
var shuiguo = new Array( ‘蘋果‘, ‘香蕉‘, ‘鴨梨‘, ‘火龍果‘, ‘西瓜‘, ‘葡萄‘, ‘蛇皮果‘ );
shuiguo[9] = ‘榴蓮‘;
document.write(shuiguo);
//在數組最後追加元素 var shuiguo = new Array( ‘蘋果‘, ‘香蕉‘, ‘鴨梨‘, ‘火龍果‘, ‘西瓜‘, ‘葡萄‘, ‘蛇皮果‘ ); shuiguo[shuiguo.length] = ‘菠蘿‘; shuiguo[shuiguo.length] = ‘芒果‘; document.write(shuiguo);
圖解,空位會用Undefined
數組的遍曆
var shuiguo = new Array( ‘蘋果‘, ‘香蕉‘, ‘鴨梨‘, ‘火龍果‘, ‘西瓜‘, ‘葡萄‘, ‘蛇皮果‘ ); for ( var i = 0; i < shuiguo.length; i++ ) { document.write(shuiguo[i]+‘很好吃<br/>‘) }
js基礎知識之_函數