详解js访问对象的属性和方法
对象的属性和方法统称为对象的成员。
访问对象的属性
在JavaScript中,可以使用“.”和“[]”来访问对象的属性。
二者区别:“.”表示法一般作为静态对象使用时来存取属性。而“[]”表示法在动态存取属性时就非常有用。
varobject={name:'xiaoming',age:29}; varname1=object.name;varname2=object['name'];
访问对象的方法
在JavaScript中,只能用“.”来访问对象的方法。
functionPerson(){ this.name='xiaoming'; this.age=29; this.say=function(){ alert('Thisisperson'); } } varstudent=newPerson(); alert(student.name); alert(student['age']); student.say();//使用"."访问对象方法
引申出的两个题目:
1.判断一个字符串中出现次数最多的字符,统计这个次数
varstr='Thisthebesttimesewerty'; varobj={}; for(vari=0;i2.编写arraysSimilar函数,实现判断传入的两个数组是否相似。
具体需求:
1.数组中的成员类型相同,顺序可以不同。例如[1,true]与[false,2]是相似的。
2.数组的长度一致。
3.类型的判断范围,需要区分:String,Boolean,Number,undefined,null,函数,日期,window.
当以上全部满足,则返回"判定结果:通过",否则返回"判定结果:不通过"。
functionarraysSimilar(arr1,arr2){ if(!(arr1instanceofArray)||!(arr2instanceofArray)){ returnfalse; } if(arr1.length!==arr2.length){ returnfalse; } vari=0,n=arr1.length,countMap1={},countMap2={},t1,t2, TYPES=['string','boolean','number','undefined','null','function','date','window']; for(i;i