引用类型和值类型的一些问题
1.先声明一个对象,在赋值给一个新对象,改变新对象的值,原对象会变
var obj = {
name:'测试'
}
var obj2 = obj
obj2.name='嘻嘻'
console.log(obj.name) //嘻嘻
2.声明一个对象,在方法内将此对象赋值给新对象,改变新对象,原对象不会改变
var obj = {
name:'测试'
}
funcation a(a){
a={
name:'haha'
}
}
a(obj)
console.log(obj.name) //测试
3.声明一个对象,在方法内将此对象赋值给新对象,改变新对象的值,原对象会改变
var obj = {
name:'测试'
}
funcation a(a){
a.name = 'haha'
}
a(obj)
console.log(obj.name) //haha
this的指向与应用
函数中存在一个this对象 1.当方法默认调用时,this指向全局 2.当方法被对象调用时this指向对象
应用:
var obj = {
name:'why',
bar:function(){
console.log("输出当前对象"+this.name)
}
}
obj.bar()