JS学习笔记(五)

JS中的对象可以简单的理解为"名称:值"对(name:value);

目录

1创建对象:

(1).通过对象字面量的形式创建对象

(2) 通过new Object()创建对象

(3)通过构造函数的形式创建对象 

(4)通过Object.create()创建对象

2.获取对象的属性.

3.添加属性

4.修改指定属性

5.通过delete删除指定属性

6.通过for/in遍历属性

7.方法中有对象


1创建对象:

(1).通过对象字面量的形式创建对象

var obj={};//没有任何属性的对象
			//alert(typeof obj);//object对象
			var obj1={x:1,y:2,z:3};//属性名:属性值
			var obj2={
				'x':2,
				'y':2,
				username:'king',
				'for':'JavaScript关键字必需放到引号之间 ',
				'first-name':'queen',
				married:true,
				test:null,
				test1:undefined,
				salary:12.3,
				persom:{
					username:'king',
					age:12,
					addr:'北京',
				}
			};

(2) 通过new Object()创建对象

            var obj3=new Object();//创建了一个空对象
			var arr=new Array();//空数组,[]
			var date=new Date();//日期
			var reg=new RegExp()//创建正则对象

(3)通过构造函数的形式创建对象 

function Test(){};
			var obj4=new Test();
			function Test1(num1,num2){
				this.n1=num1;
				this.n2=num2;
			}
			var obj5=new Test1(5,6);
//			alert(typeof obj5);
//			alert(obj5 instanceof Test1);//true

(4)通过Object.create()创建对象

			var obj6=Object.create(x:1);
			var obj7=Object.create(null);
			//创建一个普通的空对象
			var obj8=Object.create(Object.prototype);

2.获取对象的属性.

          可以用对象.属性名的形式获取到对象值,如果属性名不确定,就要使用[]来获取属性值

          

<script type="text/javascript">
			var person={
				username:'king',
				age:12,
				salary:123.45,
				addr:'北京',
				sex:'男'
			};
			
			console.log('用户名为:'+person.username+'\n'+'性别:'+person.sex);
			console.log('薪水:'+person['salary']+'\n'+'地址:'+person["addr"]);
			var key='username';
			console.log(person.key);//undefined
			console.log(person[key]);//king
		
		
		</script>

3.添加属性

            var obj={};//空对象
		  	obj.username='king';
		  	obj.age=12;
		  	obj.addr='China';
		  	obj['test']='this is a test';
		  	console.log(obj.username+'\n'+obj.age+'\n'+obj.addr+'\n'+obj['test']);

4.修改指定属性

                obj.username='queen';
				obj['test']='麦子学院';
				console.log('修改之后的名字:'+obj.username);
				console.log(obj['test']);

5.通过delete删除指定属性

            delete obj.test;
			//console.log(obj.test)

6.通过for/in遍历属性

                        var obj1={
				x:1,
				y:2,
				test:'this is test',
				edu:'khkhkh'
			};
			for(var p in obj1){
				console.log(p+'\n');
			}

7.方法中有对象

			//对象中有方法
			var obj2={
				username:'king',
				age:12,
				addr:'北京',
				sayHi:function(){
					return 'say hi~';
				},
				info:function(){
					return '用户名:'+this.username+'\n'+'年龄: '+this.age+'\n地址: '+this.addr;
				}
			}
			console.log(obj2.sayHi());
			console.log(obj2.info());
			console.log(obj2.info);//如果不带括号返回的是字符串

猜你喜欢

转载自blog.csdn.net/qq_40959340/article/details/81237297