var str = “hgDzGHjhcxghvcgxzhjzcgjhxzgcjhgsduyfuys”;
var obj = {};
var arr = [];
var letter;
for(var i = 0,len = str.length;i<len;i++){
letter = str[i];
if(!obj[letter]){ // 第一次放进去
obj[letter] = 1;
}else{
obj[letter]++;
}
}
var max_key,max_num=0;
for(key in obj){
if(max_num <obj[key]){
max_num = obj[key];
max_key = key;
}
}
alert('弹出:'+max_key);
2-举例实现对象的深拷贝 //深拷贝 复制,把一个对象中的属性或方法复制到另外的对象中 //要求在另外的对象中开辟空间,在把属性复制过来var obj1 = { age: 10, sex: '男', hobbies: ['赛车', '打游戏', '听歌'], dog: { name: '克劳斯', weight: 10, color: 'black' } }
var obj2 = {} //通过函数,把a中属性复制到b中 function copy(a, b) { //先去获取a中的属性 for (var key in a) { var item = a[key] //判断item是那种数据类型 if (item instanceof Array) { //如果是数组,b中要添加新属性,这个属性也是数组形式 b[key] = [] //遍历数组,把a[key]一个一个的复制到b[key]中 copy(item, b[key]) } else if (item instanceof Object) { b[key] = {} copy(item, b[key]) } else { //普通数据直接复制 b[key] = item }
} } copy(obj, obj2) console.dir(obj1) console.dir(obj2) 3-举例实现对象方法的继承
function Animal(wight, color) {
this.wight = wight;
this.color = color;
}
Animal.prototype.eat = function() {
console.log("吃");
}
//Cat的构造函数
function Cat( sex) {
this.sex = sex;
}
//改变cat的原型指向,指向Animal,这时Animal和Cat就有关系了
Cat.prototype = new Animal(100, "red");
Cat.prototype.catch = function() {
console.log("抓老鼠");
}
var cat = new Cat("男");
console.log(cat.wight);
console.log(cat.color);
console.log(cat.sex);
#leftDiv,#rightDiv{
width: 200px;
height: 200px;
}
#leftDiv{
background: #16A05D;
float: left;
}
#rightDiv{
background: #DC5044;
float: right;
}
#centerDiv{
background: #FFCD41;
height: 200px;
margin: 0 200px;
}
<body>
<div id="leftDiv">左边div</div>
<div id="rightDiv">右边div</div>
<div id="centerDiv">中间div</div>
</body>
$.extend({
sayHello: function(name) {
console.log('Hello,' + (name ? name : 'Dude') + '!');
}
})
$.sayHello(); //调用
$.sayHello('test'); //带参调用