TS人妖系列亚洲一区二区I北条麻妃一区二区三区I五月天av网站Iwww日日夜夜I黄色99Iwwwjizz欧美I日韩欧美免费观看I日本欧美国产I9191黄色I911亚洲精品I国模无码avI欧洲无码av

JS基礎知識整理06-函數

2019-9-30    seo達人

使用function關鍵字定義函數

函數聲明會被提升(Hoisting),將聲明移動到當前作用域頂端的默認行為。



參數:

如果函數調用的參數太多(超過聲明),則可以使用函數的內置對象arguments

arguments.length 會返回函數被調用時收到的參數數目

arguments[index]可以得到相應的參數



傳遞對象的時候是使用引用來傳遞的,如果函數修改了對象屬性,則原始對象也改變了。





調用:

以函數形式調用函數:(這種方式調用默認的是全局對象調用)

function myFunction(a, b) {

return a * b;

}

myFunction(10, 2);



作為方法來調用函數:(這種方式調用屬于函數的擁有者myObject)

var myObject = {

firstName:"Bill",

lastName: "Gates",

fullName: function () {

return this.firstName + " " + this.lastName;

}

}

myObject.fullName(); 



通過函數構造器來調用函數:(如果函數調用的前面是 new 關鍵字,那么這是一個構造函數調用)

function myFunction(arg1, arg2) {

this.firstName = arg1;

this.lastName  = arg2;

}

var x = new myFunction("Bill", "Gates");

x.firstName; 



call()和apply()方法:

var person = {

fullName: function() {

return this.firstName + " " + this.lastName;

}

}

var person1 = {

firstName:"Bill",

lastName: "Gates",

}

var person2 = {

fullName: function(city, country) {

return this.firstName + " " + this.lastName + "," + city + "," + country;

}

}



call() 方法是預定義的 JavaScript 方法。

它可以用來調用所有者對象作為參數的方法。

通過 call(),您能夠使用屬于另一個對象的方法。

如:

person.fullName.call(person1)// person1來調用person的fullName方法



call()可以帶參數,參數對應按順序的傳給方法

person2.fullName.call(person1,"Seattle", "USA")



apply()方法和call()方法類似

區別在于接收參數的方式不一樣。

call(obj,"x","y") 方法分別接受參數

apply(obj,["x","y"]) 方法接收數組形式的參數





箭頭函數:(ES6)

箭頭函數不需要function關鍵字、return關鍵字和大括號

var x = function(x, y) {

  return x y;

}



var x = (x, y) => x
y;

兩個的作用相同。



箭頭函數沒有自己的this、如果函數是單個語句,則只能省略 return 關鍵字和大括號

藍藍設計m.gyxygd.cn )是一家專注而深入的界面設計公司,為期望卓越的國內外企業提供卓越的UI界面設計、BS界面設計  cs界面設計  ipad界面設計  包裝設計  圖標定制  用戶體驗 、交互設計、 網站建設 平面設計服務

日歷

鏈接

個人資料

藍藍設計的小編 http://m.gyxygd.cn

存檔