成熟丰满熟妇高潮XXXXX,人妻无码AV中文系列久久兔费 ,国产精品一国产精品,国精品午夜福利视频不卡麻豆

您好,歡迎來到九壹網。
搜索
您的當前位置:首頁Javascript普通函數和構造函數的區(qū)別

Javascript普通函數和構造函數的區(qū)別

來源:九壹網

普通函數和構造函數的區(qū)別

在命名規(guī)則上,構造函數一般是首字母大寫,普通函數遵照小駝峰式命名法。

在函數調用的時候:

function fn() { }

構造函數:1. new fn( )
2 .構造函數內部會創(chuàng)建一個新的對象,即f的實例
3. 函數內部的this指向 新創(chuàng)建的f的實例
4. 默認的返回值是f的實例

普通函數:1. fn( )
2. 在調用函數的內部不會創(chuàng)建新的對象
3. 函數內部的this指向調用函數的對象(如果沒有對象調用,默認是window)
4. 返回值由return語句決定

構造函數的返回值:

有一個默認的返回值,新創(chuàng)建的對象(實例);
當手動添加返回值后(return語句):

1. 返回值是基本數據類型-->真正的返回值還是那個新創(chuàng)建的對象(實例)
2. 返回值是復雜數據類型(對象)-->真正的返回值是這個對象

看一個常見的面試題

<script>
 function foo() {
 var f2 = new foo2();
 console.log(f2); //{a: 3}
 console.log(this); //window
 return true;
 }
 function foo2() {
 console.log(this); //foo2類型的對象 不是foo2函數
// this.age = 30;
 return {a: 3};
 }
 var f1 = foo();
 console.log(f1); // true
</script>

Copyright ? 2019- 91gzw.com 版權所有 湘ICP備2023023988號-2

違法及侵權請聯系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com

本站由北京市萬商天勤律師事務所王興未律師提供法律服務