這篇文章帶給大家的內容是介紹js如何存取物件的屬性和方法? (程式碼範例)。有一定的參考價值,有需要的朋友可以參考一下,希望對你們有幫助。
物件的屬性和方法統稱為物件的成員。
存取物件的屬性
#在JavaScript中,可以使用「 . 」和「 [ ] ”來訪問對象的屬性。
二者差異:「 .」表示法一般作為靜態物件使用時來存取屬性。而「[ ]」表示法在動態存取屬性時就非常有用。
var object = {name:'xiaoming',age:29}; var name1 = object.name;var name2 = object['name'];
存取物件的方法
#在JavaScript中,只能用「 . 」來存取物件的方法。
function Person(){ this.name = 'xiaoming'; this.age = 29; this.say = function(){ alert('This is person'); } } var student = new Person(); alert(student.name); alert(student['age']); student.say(); //使用" . "访问对象方法
引申出的兩個題目:
1.判斷字串中出現次數最多的字符,統計這個次數
var str = 'Thisthebesttimesewerty'; var obj = {}; for(var i=0; i<str.length;i++){ var char = str[i]; // var char = str.charAt(i); //charAt()可返回指定位置的字符,i为字符的下标,从0开始 if(obj[char]){ obj[char]++; //char是obj对象的一个属性,如果存在次数加1 }else{ obj[char] = 1; //如果不存在,保存在obj中并计数为1 } } var max = 0; var maxChar = null; for(var key in obj){ if(max < obj[key]){ max = obj[key]; //出现最多次数max maxChar = key; //出现次数最多的字符maxChar } }
2.寫arraysSimilar函數,實現判斷傳入的兩個數組是否相似。
特定需求:
# 1. 陣列中的成員型別相同,順序可以不同。例如[1, true] 與 [false, 2]是相似的。
2. 陣列的長度一致。
3. 類型的判斷範圍,需要區分:String, Boolean, Number, undefined, null, 函數,日期, window.
當以上全部滿足,則返回"判定結果:通過",否則返回"判定結果:不通過"。
function arraysSimilar(arr1,arr2){ if(!(arr1 instanceof Array) || !(arr2 instanceof Array)){ return false; } if(arr1.length !== arr2.length){ return false; } var i=0, n=arr1.length, countMap1={}, countMap2 = {}, t1, t2, TYPES = ['string','boolean','number','undefined','null','function','date','window']; for(i; i<n; i++){ t1 = typeOf(arr1[i]); t2 = typeOf(arr2[i]); if(countMap1[t1]){ countMap1[t1]++; } else{ countMap1[t1] = 1; } if(countMap2[t2]){ countMap2[t2]++; } else{ countMap2[t2] = 1; } } for(i=0; i<TYPES.length; i++){ if(countMap1[TYPES[i]] != countMap2[TYPES[i]]){ return false; } } return true; } function typeOf(ele){ var r; if(ele === null){ r = 'null'; } else if(ele === 'window'){ r = 'window'; } else if(ele instanceof Array){ r = 'array'; } else if(ele instanceof Date){ r = 'date'; } else{ r = typeof(ele); } return r; }
以上是js如何存取物件的屬性和方法? (程式碼範例)的詳細內容。更多資訊請關注PHP中文網其他相關文章!