JavaScript学习--对象
来源:互联网 发布:行知教育集团 编辑:程序博客网 时间:2024/06/10 22:22
/**************对象********************/
//面向对象的特征:封装、继承、多态
//面向对象:可以创建自定义的类型,很好的支持继承和多态,面向对象的语言有C++、Java、C#
//基于对象:无法创建自定义的类型、不能很好的支持继承和多态,基于对象的语言有JavaScript
/*//1.创建对象
var hero=new Object();
//2.设置属性--特征
hero.name="hero";
hero.level=0;//等级
hero.diamond=0;//钻石
//3.设置方法--行为
hero.move=function(){
alert("move left");
}
hero.attack=function(name){
//this指当前对象,在这里指hero这个对象
//注意:只有在当前对象的方法中,this才是当前对象
alert(this.name+"攻击"+name);
}
alert(hero.name);
alert(hero.move());
alert(hero.attack("怪兽"));*/
//创建多个不同对象--自定义构造函数
/*var createStudent=function(name,age,score){
var student=new Object();
//创建对象
student.name=name;
student.age=age;
student.score=score;
student.sayHello=function(){
alert("hello");
}
return student;
}
var s1=createStudent("qiu",12,30);
var s2=createStudent("zhi",23,90);
alert(s1.name);
alert(s2.sayHello());*/
//方法二:创建对象
//1.内存开辟空间,存储新创建的对象new Object
//2.把this设置为当前对象
//3.执行函数内部的代码,设置对象的属性和方法
//4.返回新创建的对象
/*function Student(name,age,score){
this.name=name;
this.age=age;
this.score=score;
this.sayHello=function(name){
alert("hello "+this.name);
}
}
var s1=new Student("qiu",12,30);
var s2=new Student("zhi",13,34);
alert(s1.sayHello(s2.name));
alert(s1["name"]);//这种写法相当于s1.name;*/
//动态给对象设置属性
/*var o=new Object();
for (var i=0;i<10;i++) {
o["n"+i]=i;
}
alert(o.n2);*/
/**
* 总结:
* 1.什么时候是undifined,什么时候是not defined
* alert(a);//报错-not defined
* var a;
* alert(a);//undifined
* 2.函数可以作为另一个函数的参数,函数可以作为函数的返回值
* 3.对象可以封装一组数据,方便以后的使用
* 4.对象概念:----学习之美在于一头雾水
* a、一组无序属性的集合;
* b、对象可以看出键值对;如student["name"];
* c、属性可以包含基本值、对象和函数
* 5.对象的组成:
* a、属性--特征
* b、方法--行为
* c、事件
* 6.函数和方法的区别
* 7.构造函数:
* a、构造函数的目的是用来创建对象
* b、使用new Object()创建对象
* c、封装函数创建多个对象
* d、自定义构造函数:
* (1)内存开辟空间,存储新创建的对象new Object
* (2)把this设置为当前对象
* (3)执行函数内部代码,设置对象的属性和方法
* (4)返回新创建的对象
* 8.this关键字--当前对象
*
*/
//对象字面量
/*var o={
name:"qiuzhiwen",
age:14,
score:50,
sayHello:function(){
alert("hello "+this.name);
}
};*/
//JSON--JavaScript Object Notation类似于对象字面量
//json是描述数据的一种标准规范,可以跨语言
/*var o={
"name":"qiuzhiwen",
"age":30,
"score":80
};*/
/*var arr=new Array();
//输出对象的属性和方法
//注意:有些系统提供的对象的属性和方法无法遍历,原因是对象的属性和方法被设置为不可遍历
alert(arr);//输出为空
for (var key in arr) {
alert(key);
}*/
//面向对象的特征:封装、继承、多态
//面向对象:可以创建自定义的类型,很好的支持继承和多态,面向对象的语言有C++、Java、C#
//基于对象:无法创建自定义的类型、不能很好的支持继承和多态,基于对象的语言有JavaScript
/*//1.创建对象
var hero=new Object();
//2.设置属性--特征
hero.name="hero";
hero.level=0;//等级
hero.diamond=0;//钻石
//3.设置方法--行为
hero.move=function(){
alert("move left");
}
hero.attack=function(name){
//this指当前对象,在这里指hero这个对象
//注意:只有在当前对象的方法中,this才是当前对象
alert(this.name+"攻击"+name);
}
alert(hero.name);
alert(hero.move());
alert(hero.attack("怪兽"));*/
//创建多个不同对象--自定义构造函数
/*var createStudent=function(name,age,score){
var student=new Object();
//创建对象
student.name=name;
student.age=age;
student.score=score;
student.sayHello=function(){
alert("hello");
}
return student;
}
var s1=createStudent("qiu",12,30);
var s2=createStudent("zhi",23,90);
alert(s1.name);
alert(s2.sayHello());*/
//方法二:创建对象
//1.内存开辟空间,存储新创建的对象new Object
//2.把this设置为当前对象
//3.执行函数内部的代码,设置对象的属性和方法
//4.返回新创建的对象
/*function Student(name,age,score){
this.name=name;
this.age=age;
this.score=score;
this.sayHello=function(name){
alert("hello "+this.name);
}
}
var s1=new Student("qiu",12,30);
var s2=new Student("zhi",13,34);
alert(s1.sayHello(s2.name));
alert(s1["name"]);//这种写法相当于s1.name;*/
//动态给对象设置属性
/*var o=new Object();
for (var i=0;i<10;i++) {
o["n"+i]=i;
}
alert(o.n2);*/
/**
* 总结:
* 1.什么时候是undifined,什么时候是not defined
* alert(a);//报错-not defined
* var a;
* alert(a);//undifined
* 2.函数可以作为另一个函数的参数,函数可以作为函数的返回值
* 3.对象可以封装一组数据,方便以后的使用
* 4.对象概念:----学习之美在于一头雾水
* a、一组无序属性的集合;
* b、对象可以看出键值对;如student["name"];
* c、属性可以包含基本值、对象和函数
* 5.对象的组成:
* a、属性--特征
* b、方法--行为
* c、事件
* 6.函数和方法的区别
* 7.构造函数:
* a、构造函数的目的是用来创建对象
* b、使用new Object()创建对象
* c、封装函数创建多个对象
* d、自定义构造函数:
* (1)内存开辟空间,存储新创建的对象new Object
* (2)把this设置为当前对象
* (3)执行函数内部代码,设置对象的属性和方法
* (4)返回新创建的对象
* 8.this关键字--当前对象
*
*/
//对象字面量
/*var o={
name:"qiuzhiwen",
age:14,
score:50,
sayHello:function(){
alert("hello "+this.name);
}
};*/
//JSON--JavaScript Object Notation类似于对象字面量
//json是描述数据的一种标准规范,可以跨语言
/*var o={
"name":"qiuzhiwen",
"age":30,
"score":80
};*/
/*var arr=new Array();
//输出对象的属性和方法
//注意:有些系统提供的对象的属性和方法无法遍历,原因是对象的属性和方法被设置为不可遍历
alert(arr);//输出为空
for (var key in arr) {
alert(key);
}*/
阅读全文
1 0
- javascript面向对象学习
- javascript面向对象学习
- javaScript的对象学习
- Javascript学习笔记-----对象
- JavaScript对象学习小结
- javascript对象学习笔记
- JavaScript学习笔记:对象
- javascript 日期对象学习
- javascript对象章节学习
- JavaScript学习2--对象
- JavaScript对象学习
- Javascript对象学习
- JavaScript-navigator对象学习
- JavaScript对象学习
- JavaScript Date 对象学习
- JavaScript学习-window对象
- JavaScript学习-location对象
- JavaScript学习-navigator对象
- centos安装ffmpeg-php处理视频资源
- 地形纹理技术
- 瞎搞poj1013
- 安装windows server 2016报错无法打开所需文件install.wim的解决方法
- Vega数据可视化工具—教你轻松玩转大数据可视化 | 附代码
- JavaScript学习--对象
- 模拟poj1350
- 在Eclipse 中项目 A 使用项目B中的类 使用link source
- windows下使用Jedis测试redis
- GCD信号量—dispatch_semaphore详解与使用
- 抽屉原理&&容斥原理&&欧拉函数 (小总结)
- windows下使用git
- 在解决方案中所使用 NuGet 管理软件包依赖
- 【Java并发编程】Fork/Join