js_对象实例

JavaScript实例的讲解

1、有一个黄色的小狗,叫大黄,今年已经三岁了,250斤的体重,它最喜欢吃骨头

1
2
3
4
5
6
7
8
9
10
11
12
//创建对象
var smallDog=new Object();
//属性
smallDog.name="小黄";
smallDog.age=3+"岁";
smallDog.weight=250+"斤";
smallDog.eat =function (){
console.log("吃大骨头");
};
console.log(smallDog.name+"已经"+smallDog.age+"了,体重是"+smallDog.weight);
console.log("它最喜欢吃");
smallDog.eat();

String对象的实例例子:

1、查找字符出现几次?

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
/*分析:
var obj={
"sex":"男";
};//我想知道这个obj对象中有没有sex属性,
//把对象["属性名字"]放在if判断语句中,判端对象中有没有这个属性
//如果if判断的结果是true,则有这个属性,否则没有这个属性
if(obj["sex"]){
console.log("有");
}else{
console.log("没有");
}
*/
var str="heLlojRRFDSheLlojRRFDSheLlojRRFDSheLlojRRFDS";
//第一步:将所有的字母都变成小写字母
str=str.toLocaleLowerCase();
//console.log(str);
//第二步:创建一个空对象,目的是:把字母作为键,次数作为值
var obj={};//创建的空对象,没有属性和方法
//第三步:遍历字符串,把每个字母都变成键
for(var i=0;i<str.length;i++){
//判断obj对象中有没有这个字母
var key=str[i];//每个字母
if(obj[key]){//判断obj中有没有这个键
//对象中已经有这个字母了
obj[key]++;
}else{
//对象中没有这个字母,那就把字母加到对象中,
//并且给这个字母出现的次数,默认是1
obj[key]=1;
}
}
//第四步:遍历对象,显示每个字母出现的次数
for(key in obj){
console.log(key+"出现了"+obj[key]+"次");
}

2、找到这个字符串中的所有的o出现的位置

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
var str2="hello wod kod nnmbod kkdop";
//var index=str2.indexOf("o",0);
//console.log(index);
var index=0;
var key="o";
while((index=str2.indexOf(key,index))!=-1){//值不等于-1,说明找到了
console.log(index);
index=index+key.length;//已经找到的o的下一位开始查找
}
/*
4
7
11
18
24
*/

3、截取部分字符串

1
2
3
4
5
var str="太帅了的点点滴滴";
var key="点点";
var index=str.indexOf(key);//找到截取字符串的索引
str=str.substr(index,2);//从该索引位置开始截取,截取两个
console.log(str);//点点

4、数组求和(使用split切割)

1
2
3
4
5
6
7
8
9
10
<meta charset="utf-8">
<script>
var s="1+2+3+4+5";
var s1=s.split("+");//分割成一个数组
var sum=0;
for(i=0;i<s1.length;i++){
sum=sum+parseInt(s1[i]);
}
document.write("1+2+3+4+5="+sum);
</script>

Math对象的实例例子:

1、自己定义一个对象,实现系统的max的方法

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
function myMax(){
//添加一个方法
this.getMax=function(){
//所有数字中的最大值
var max=arguments[0];
for(var i=0;i<arguments.length;i++){
if(max<arguments[i]){
max=arguments[i];
}
}
return max;
};
}
//实例化对象
var mt=new myMax();
var result=mt.getMax(22,10,20,30,40,0);
console.log(result);

2、随机产生一个十六进制的颜色值:封装成一个函数

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
<html>
<head>
<meta charset=utf-8>
<head>
<style>
#dv{
width:300px;
height:300px;
background:pink
}
</style>
</head>
<body>
<div id="dv"></div>
<script>
//console.log((Math.random()*22)+1);
function getColor(){
var str="#";
//一个十六进制的值得数组
var arr=["0","1","2","3","4","5","6","7","8","9","A","B","C","D","E","F","a","b","c","d","e","f"];
for(var i=0;i<6;i++){
//产生的每个随即数都是索引
var num=parseInt(Math.random()*22);
str+=arr[num];
}
return str;
}
console.log(getColor());
window.onload=function(){//页面加载的事件
document.getElementById("dv").style.backgroundColor=getColor();
};
</script>
</body>
</html>

Date对象实例例子

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
<html>
<head>
<meta charset=utf-8>
</head>
<body>
<script>
function getDate(){
var d=new Date();
//年份:
var year=d.getFullYear();
//月份:
var month=d.getMonth()+1;
//日:
var date=d.getDate();
//星期:
var week=d.getDay();
//小时:
var hour=d.getHours();
//分钟:
var minute=d.getMinutes();
//秒:
var second=d.getSeconds();
hour=hour<10?"0"+hour:hour;
minute=minute<10?"0"+minute:minute;
second=second<10?"0"+second:second;
return year+"年"+month+"月"+date+"日 星期"+week+" "+hour+":"+minute+":"+second;
}
console.log(getDate());
</script>
</body>
</html>

Array对象的filter方法例子

把不含0的数组作为新的数组

1
2
3
4
5
var arr1=[10,0,20,0,0,90,98];
var newArr1=arr1.filter(function(ele){
return ele!=0;
});
console.log(newArr1);//[10, 20, 90, 98]