普通函数和构造函数的区别
在命名规则上,构造函数一般是首字母大写,普通函数遵照小驼峰式命名法。
在函数调用的时候:
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>
感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!
本文向大家介绍class和普通构造函数有什么区别?相关面试题,主要包含被问及class和普通构造函数有什么区别?时的应答技巧和注意事项,需要的朋友参考一下 构造函数可以当作普通的函数调用,而class 只能使用new 关键字调用 class 内部默认启用严格模式 class 不存在变量提示(函数提交)在定义class前使用new调用会出错 class 内部定义的方法和属性都是不可以遍历的。 cla
本文向大家介绍Java构造函数与普通函数用法详解,包括了Java构造函数与普通函数用法详解的使用技巧和注意事项,需要的朋友参考一下 函数也被称为方法! 函数的作用及特点: 1、用于定义功能,将功能封装。 2、可以提高代码的复用性。 函数注意事项: 1、不能进行函数套用(不可以在函数内定义函数)。 2、函数只有被调用才能被执行。 3、基本数据类型(String、int、….)修饰的函数类型,要有re
实际上,我不明白无参数构造函数和默认构造函数的区别是什么。 在创建名为cFrame的Test对象时,是否调用此类的默认构造函数?
问题内容: 其实我不明白,无参数构造函数和默认构造函数有什么区别。 创建名为cFrame的Test对象时,这是否调用此类的默认构造函数? 问题答案: 该构造函数是一个无参数的构造函数,代表您的Java编译器插入; 它包含对(not )的调用,这是默认行为。如果实现任何构造函数,则不再收到默认的构造函数。 JLS-8.8.9。默认构造函数说(部分), 如果一个类不包含构造函数声明,则隐式声明一个没有
问题内容: 在同一个开发人员将RegExp字面量更改为构造函数调用后,我们最近遇到了一个错误,我想知道为什么根本没有区别。确切的代码是 与原始的 例如,当为时,第一个(越野车)呼叫返回,而第二个(返回) 不用说,我撤消了更改,但是我想知道为什么首先会有如此不同。 问题答案: 有两个问题: 的是 不 表达的一部分。它们是 分隔符 ,标记了正则表达式文字。如果使用则必须将其删除,否则它们在字面上会匹配
类构造函数 类constructor是类的特殊成员函数,只要我们创建该类的新对象,就会执行该函数。 构造函数与类具有完全相同的名称,它根本没有任何返回类型,甚至无效。 构造函数对于为某些成员变量设置初始值非常有用。 下面的例子解释了构造函数的概念 - #include <iostream> using namespace std; class Line { public: voi