js函数声明方式*2,对象声明方式*7,不同的调用
目录
二、七种对象声明方式
一、两种函数声明方式
【1】命名函数
形如:
function fu1(){
let firstName = '111111111'
let lastName ='2222222'console.log(firstName ,lastName )
}function fu2(firstName,lastName ){
let firstName =firstName
let lastName =lastName 'console.log(firstName ,lastName )
}
调用:
fu1 //111111111 2222222
fu2(‘你看我几分像从前’,‘眼里透露着清澈的愚蠢’) //你看我几分像从前 眼里透露着清澈的愚蠢
【2】匿名函数
形如:
fn3=function(){
let firstName = '111111111'
let lastName ='2222222'console.log(firstName ,lastName )
}
fn4=function(firstName,lastName){
let firstName = '111111111'
let lastName ='2222222'console.log(firstName ,lastName )
}
调用:
fu3 //111111111 2222222
fu4(‘你看我几分像从前’,‘眼里透露着清澈的愚蠢’) //你看我几分像从前 眼里透露着清澈的愚蠢
二、七种对象声明方式
【1】字面量声明方式
形如:
var obj={
key1:value1,
key2:value2
}
调用:
obj.key1
obj.key2
obj['key1']
obj['key2']
【2】new操作符+Object声明对象
var obj=new Object()
obj.属性名=属性值;
obj.方法名=匿名函数;
obj.key1
obj.key2
obj['key1']
obj['key2']
【3】构造函数声明对象
形如:
function test(value1,value2,[argument]){
this.属性名=value1;
this.方法名=value2
}
var obj= new test(value1,value2,[argument]])
【4】工厂声明方式
形如:
function test(value1,value2,[argument]){
var obj=new Object()
obj.属性名=value1;
obj.方法名=value2;
}
var obj1= new test(value1,value2,[argument]])
var obj2= new test(value1,value2,[argument]])
调用:同上
【5】原型声明方式
形如:
function test(value1,value2,[argument]){
test.prototype.属性名=value1
test.prototype.方法名=value2
}
var obj=new test(value1,value2,[argument])
调用:同上
【6】混合原型和构造函数声明方式
形如:
function test(value1,value2,[argument]){
this.属性名=value1;
this.方法名=value2
}
test.prototype.属性名=属性值
test.prototype.方法名=匿名函数
var obj=new test(value1,value2,[argument])
调用:同上
【7】class类方式声明对象
形如:
class Phone{
constructor{
this.属性名:属性值
this.方法名:匿名函数
}
}
var obj=new Phone()
调用:
obj.属性名
obj.方法名