JavaScript高级 知识点

创建对象的三种方式
1.字面量的方式

var per={
	name:"张三",
	age:20,
	eat:function(){
		
	}
}

2.调用系统的构造函数

var per new Object();
per.name="张三";
per.age=20;
per.eat=function(){
	
}

3.自定义构造函数

function Person(name,age)	{
	this.name=name;
	this.age=age;
	this.eat=function(){
		
	}
}
var per=new Person("张三",20) 	

判断这个对象是不是这种类型的方式

1.console.log(per.constructor==Person)
2.console.log(per instanceof Person)

通过原型添加方法:(解决数据共享,节省内存空间)
原型:__proto__或者 prototype

unction Person(name,age)	{
	this.name=name;
	this.age=age;
}
Person.prototype.eat=function(){
	
}
var per=new Person("张三",20) 

简单的原型写法

Person.prototype={
	//手动修改构造器的指向
	constructor:Person,
	height:"168",
	weight:"48kg",
	stuly:function(){
		
	}
}

点击按钮,改变div多个样式的属性值(面向对象的方法)

function ChangeStyle(btnObj,divObj,json){
	this.btnObj=btnObj;
	this.divObj=divObj;
	this.json=json;
}
ChangeStyle.prototype.init=function(){
	var that=this;
	this.btnObj.onclick=function(){
		for(var key in that.json){
			that.divObj.style[key]=that.json[key]
		}
	}
}

如何把局部变量变成全局变量

(function(win){//函数的自调用
	var num=10;//局部变量
	win.num=num;//js是一门动态类型的语言,对象.属性,则直接创建该属性
})(window)
console.log(num);//输出10,num变成全局变量

猜你喜欢

转载自blog.csdn.net/weixin_39150852/article/details/85255282
今日推荐