Javascript 普通函数和构造函数的区别
程序员文章站
2022-04-05 23:29:16
...
普通函数和构造函数的区别
在命名规则上,构造函数一般是首字母大写,普通函数遵照小驼峰式命名法。
在函数调用的时候:
function fn() { }
构造函数:1. new fn( )
2 .构造函数内部会创建一个新的对象,即f的实例
3. 函数内部的this指向 新创建的f的实例
4. 默认的返回值是f的实例
普通函数:1. fn( )
2. 在调用函数的内部不会创建新的对象
3. 函数内部的this指向调用函数的对象(如果没有对象调用,默认是window)
4. 返回值由return语句决定
构造函数的返回值:
有一个默认的返回值,新创建的对象(实例);
当手动添加返回值后(return语句):
1. 返回值是基本数据类型-->真正的返回值还是那个新创建的对象(实例)
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>
上一篇: vue组件做出无限层级多选效果
下一篇: 适配各种尺寸的设备的实现
推荐阅读
-
详解PHP中strlen和mb_strlen函数的区别
-
PHP函数addslashes和mysql_real_escape_string的区别
-
浅谈javascript的url参数parse和build函数
-
javascript构造函数和原型(js构造函数和普通函数的区别)
-
javascript构造函数和原型(js构造函数和普通函数的区别)
-
PHP的压缩函数实现:gzencode、gzdeflate和gzcompress的区别
-
Javascript 普通函数和构造函数的区别
-
JavaScript中setTimeout和setInterval函数的传参及调用
-
javascript构造函数的作用(构造函数的八种方法)
-
javascript构造函数的作用(构造函数的八种方法)