创建函数的三种方式:函数声明,函数表达式,函数对象
- 函数声明
function sum1(num1,num2){
return num1+num2;
}
sum1(10,20);
- 函数表达式
var sum2 = function(num1,num2){
return num1+num2;
}
sum(10,20);
- 函数对象形式
var sum3 = new Function("num1","num2","return num1+num2");
//var 函数名 = new Function(“参数...”,”函数体”);
var sum = new Function("num1,num2","return num1+num2");
var result1 = sum(120,130);
alert(result1)
构造函数和普通函数的区别
- 定义方式:构造函数首字母通常大写
- 调用方式:构造函数调用方法为:new Person()
普通函数调用方法为:person() - 作用:构造函数用来新建实例对象
- 构造函数的函数名与类名相同:Person( ) 这个构造函数,Person 既是函数名,也是这个对象的类名
- 构造函数内部用this 来构造属性和方法
function Person(name,job,age)
{
this.name=name;
this.job=job;
this.age=age;
this.sayHi=function()
{
alert("Hi")
}
}
- 构造函数的执行流程
在堆内存中创建一个新的对象
将this指向这个新建的对象
执行函数中的代码
将新建对象作为返回值 - 构造函数默认将新建对象返回,普通函数如果没定义返回值,则返回undefined
- 用instanceof 可以检查一个对象是否是一个类的实例,是则返回true;所有对象都是Object对象的后代,所以任何对象和Object做instanceof都会返回true
function Person(name, age, gender){
this.name = name;
this.age = age;
}
var per = new Person("komal",20);
console.log(per); //Person
console.log(per instanceof Person) //true
参考博文:
https://blog.csdn.net/JinPingQ/article/details/84335179
https://blog.csdn.net/weixin_41796631/article/details/82939585
网友评论