您好,登錄后才能下訂單哦!
這篇文章主要講解了“javascript中的函數是指什么”,文中的講解內容簡單清晰,易于學習與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學習“javascript中的函數是指什么”吧!
在javascript中,函數(Function)是一段被封裝好的代碼,可以被反復使用(調用);函數可以是一個值、一個對象、一類數據,還可以是一個表達式,因此函數可以賦值、可以運算、可以擁有屬性和方法,甚至可以臨時存儲值、構造實例等。
本教程操作環境:windows7系統、javascript1.8.5版、Dell G3電腦。
在 JavaScript 中,對象是一個泛化的概念,任何值都可以轉換為對象,以對象的方式進行使用,如數字對象、布爾值對象、字符串對象、類型對象、函數對象、數組對象等,它們都繼承 Object 類型對象,擁有共同的基本屬性和方法。此外,JavaScript 也允許自定義對象。
從狹義的概念來分析,對象(Object)是最基本的數據類型,是復合型的結構、引用型的數據,它是無序數據集合,對象中每個成員被稱為屬性。
JavaScript 是基于對象,但不完全面向對象的編程語言。在 JS 面向對象的編程模式中,有兩個核心概念: 對象和類。在 ECMAScript6 規范之前,JavaScript 沒有類的概念,僅允許通過構造函數來模擬類,通過原型實現繼承。
JS創建對象
構造對象
使用 new 運算符調用構造函數,可以構造一個實例對象。具體用法如下:
var objectName = new functionName(args);
參數說明如下:
objectName:返回的實例對象。
functionName:構造函數,與普通函數基本相同,但是不需要 return 返回值,返回實例對象,在函數內可以使用 this 預先訪問。
args:實例對象初始化配置參數列表。
示例
下面示例使用不同類型的構造函數定義各種實例。
var o = new Object(); //定義一個空對象 var a = new Array(); //定義一個空數組 var f = new Function(); //定義一個空函數
對象直接量
使用直接量可以快速創建對象,也是最高效、最簡便的方法。具體用法如下:
var objectName = { 屬性名1 : 屬性值1, 屬性名2 : 屬性值2, ... 屬性名n : 屬性值n };
在對象直接量中,屬性名與屬性值之間通過冒號進行分隔,屬性值可以是任意類型的數據,屬性名可以是 JavaScript 標識符,或者是字符串型表達式。屬性于屬性之間通過逗號進行分隔,最后一個屬性末尾不需要逗號。
示例
下面代碼使用對象直接量定義兩個對象。
var o = { //對象直接量 a : 1, //定義屬性 b : true //定義屬性 } var o1 = { //對象直接量 "a" : 1, //定義屬性 "b" : true //定義屬性 }
JavaScript 構造函數
JavaScript 構造函數(Constructor)也稱為構造器、類型函數,功能類似對象模板,一個構造函數可以生成任意多個實例,實例對象具有相同的屬性、行為特征,但不相等。
定義構造函數
在語法和用法上,構造函數與普通函數沒有任何區別。定義構造函數的方法如下:
function 類型名稱 (配置參數) { this.屬性1 = 屬性值1; this.屬性2 = 屬性值2; ... this.方法1 = function () { //處理代碼 }; ... //其他代碼,可以包含return語句 }
建議構造函數的名稱首字母大寫,以便與普通函數進行區分。
構造函數有兩個顯著特點。
函數體內使用 this,引用將要生成的實例對象。
必需使用 new 命令調用函數,生成實例對象。
示例
下面示例演示定義一個構造函數,包含了兩個屬性和一個方法。
function Point (x, y) { //構造函數 this.x = x; //私有屬性 this.y = y; //私有屬性 this.sum = function () { //方法 return this.x + this.y; } } 在上面代
碼中,Point 就是構造函數,它提供模板,用來生成實例對象。
感謝各位的閱讀,以上就是“javascript中的函數是指什么”的內容了,經過本文的學習后,相信大家對javascript中的函數是指什么這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是億速云,小編將為大家推送更多相關知識點的文章,歡迎關注!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。