JavaScript笔记(九)----- 对象

前言

没有对象,就自己创建对象

没对象?new一个


一、对象是什么?

对象是一个具体的事物。

对象是一组无序的相关属性和方法的集合,所有的事物都是对象,比如,字符串,数值,数组,函数等

二、对象的使用

1.保存一个值时,可以使用变量,保存多个值(一组值)时,可以使用数组。

代码如下(示例):

小明.姓名 = '小明';           xiaoming.name = '小明';  

小明.性别 = '男' ;                                      xiaoming.sex = '男'    ;   

小明.年龄 = 18 ;                                      xiaoming.age = 18;

小明.身高 = 190  ;                                    xiaoming.height = 190;

三.创建对象的方法

1.对象字面量:

花括号{ }里面包含了表达对象的属性和方法

代码如下(示例):

            // var obj ={}  //创建了一个空对象               

2.调用对象

  1. 对象名 . 属性值                console.log(obj.unname);
  2. 对象名 [ ' 属性名 ' ]             console.log(obj['age']); 

 3.调用对象的方法

对象名 . 方法名();               obj.sayHi();

举个栗子: 

            var obj = {
                unname: "小明",
                age: 18,
                sex: "男",
                sayHi: function() {
                    console.log("hi~");
                }
            }
            console.log(obj.unname);
            obj.sayHi();
            console.log(obj['age']);

 注意:

1.里面的属性或方法采取键值对的形式

     键  属性名  :值   属性值 

2.多个属性或方法之间用逗号隔开

3.方法冒号后面跟的是一个匿名函数


 2.用 new  Object  创建对象

举个栗子:

			var obj = new 0bject(); //创建了一个空对象
			obj.unname = '小明';
			obj.age = 18;

			obj.sayHi = function() {
				console.log('hi');
			}
            console.log(obj.unname);
            obj.sayHi();
            console.log(obj['age']);

 注意:

1.利用等号赋值的方法,添加对象的属性和方法

2.每个属性和方法用分号隔开


3.构造函数创造对象

构造函数的优点:

  1.重复相同代码

  2.封装的不是代码,而是对象 

  3.可以一次创造很多对象

  4.把相同的·代码的属性和方法封装到函数里

 语法格式:

            function 构造函数名(){
                this.属性=值;
                this.方法=function (){}
            }
            new 构造函数名();

举个栗子:

			function Star(unname, age, sex) {
				this.name = unname;
				this.age = age;
				this.sex = sex;
				this.sing = function(song) {
					console.log(song);
				}
			}
			var xm = new Star('小明', 18, '男'); //调用函数返回的是一个对象
			console.log(xm.name);
			console.log(xm.age);
			console.log(xm.sex);
			xm.sing('月亮之上');
			var xmei = new Star('小美', 19, '女')
			console.log(xmei.name);
			console.log(xmei.sex);

 注意:

  1.         构造函数的名字的首字母要大写
  2.         构造函数不需要return就可以返回结果
  3.         调用构造函数必须用new
  4.         只要new Star() 调用这个函数就创建了一个对象 xm{}
  5.         属性和方法前面必须添加 this

new关键字的执行过程:

1.在内存中创建一个新对象

2.this指向新对象

3.执行构造函数里的代码,给这个新对象添加属性和方法

4.返回新对象(所以不需要return)


四、遍历对象

for in

for in 用于对数组或者对象的属性进行循环操作

语法结构:

for (变量  in  对象){

举个栗子:

			var obj = {
				unname: "小明",
				age: 18,
				sex: "男",
			}
			for(var k in obj ){
				console.log(k);      //k 变量  输出得到的是属性名
				console.log(obj[k]); // obj[k]  输出的是属性值 不加引号,否则会变成字符串
			}

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值