Remarque : la méthode println() utilisée ci-dessous est écrite dans la méthode out.js importée séparément
out.js :
1 2 3 4 5 6 7 | function print (param){
document.write(param);
}
function println(param){
document.write(param+ "<br/>" );
}
|
Copier après la connexion
dans le bloc d'instruction with , vous pouvez omettre la référence au nom de l'objet
1 2 3 4 5 6 7 8 9 10 11 12 13 | var dd2 = new Date ();
with(dd2){
var year = getFullYear();
var month= getMonth();
var day = getDate ();
println(year+ "年" +month+ "月" +day+ "日 " );
}
|
Copier après la connexion
1. Objet objet
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 | <html>
<head>
<title>Object对象的用法演示</title>
</head>
<body>
<script type= "text/javascript" >
function show(){
alert( "show......" );
}
var arr=[1,2,3,8];
</script>
</body>
</html>
|
Copier après la connexion
2. Objet chaîne
1. Deux façons de créer un objet chaîne
1 2 3 | 1) var str = new String( "abc123" );
2) var str2 = "abcd1234" ;
|
Copier après la connexion
2. Attributs dans l'objet String
str.length : longueur de la chaîne
3. Méthodes dans l'objet String
bold(). : Gras
fontcolor("red") : Définir la couleur
link("http://www.hncu.net") : Définir comme lien hypertexte
substring(1 , 5) : Prenez la sous-chaîne [1,5), la même que Java, la gauche la contient, la droite ne l'inclut pas
substr(1,5) : Prenez la sous-chaîne : à partir de la position 1 Commencez, prenez 5 caractères
3. Objet Date
1. Construction de l'objet Date
1 2 3 4 5 6 7 | var date = new Date ();
println( date );
println( date .toLocaleString());
println( date .toLocaleDateString());
|
Copier après la connexion
2. Analysez l'élément date correspondant de l'objet
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 | var year = date .getFullYear();
println(year);
var month= date .getMonth();
println(month);
var day1 = date .getDay();
println(day1);
var day2 = date . getDate ();
println(day2);
|
Copier après la connexion
3. Demande d'affichage du "jour de la semaine" d'une certaine date
1 2 3 4 5 6 | function getWeekDay( num ){
var weeks = ['星期日','星期一','星期二','星期三','星期四','星期五','星期六'];
return weeks[num];
}
var weekDay = getWeekDay( date .getDay() );
println(weekDay);
|
Copier après la connexion
4. Conversion entre les objets date et les valeurs en millisecondes
1 2 3 4 5 6 7 8 9 | var date2 = new Date ();
var time = date2.getTime();
println( "time:" +time);
var date3 = new Date (time);
println(date3.toLocaleDateString());
|
Copier après la connexion
5 , convertir entre les objets date et les chaînes
1 2 3 4 5 6 7 8 9 10 11 12 | var strDate= "9/27/2015 " ;
var time = Date .parse(strDate);
var d = new Date (time);
println(d.toLocaleString());
|
Copier après la connexion
6、日期解析错误时,抛异常
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 | <script type= "text/javascript" >
Date .prototype.parse2 = function (str){
throw new Exception();
};
try {
var strDate2= "9/27/2ewewwe15 " ;
var time2 = Date .parse2(strDate2);
} catch (e){
alert( "日期解析错误....我给的提示...." );
}
</script>
|
Copier après la connexion
四、Math 对象
Math.ceil(12.34);//向上进位
Math.floor(12.34);//向下进位
Math.round(12.54);//四舍五入
Math.pow(5,6);//5的6次方
1 2 3 4 5 6 7 | for ( var x=0;x<10;x++){
var n=parseInt(Math.random()*11);
println(x+ ": " +n);
}
|
Copier après la connexion
五、Global对象
Global对象中的方法是全局方法,调用时可以省略Global,直接写方法名
1、parseInt()中的基数用法----进制转换
1)将指定进制格式的字符串转换成-->10进制数
1 2 3 4 5 | var num = parseInt( "0x3c" ,16);
|
Copier après la connexion
2)10进制转换成--->非10进制
1 2 3 4 5 6 7 | var num2 = new Number(6);
println( "num2=" + num2.toString(2) );
var num3 = 60;
println( "num3=" + num3.toString(16) );
|
Copier après la connexion
2、for(in)语句的用法
1)格式:
for(变量 in 对象){
...//对对象中的元素进行遍历操作
}
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 | <script type= "text/javascript" >
<span style= "white-space:pre" > </span>
<span style= "white-space:pre" > </span> var arr=[12,13,22,-1,56,0,9];
<span style= "white-space:pre" > </span> for (x in arr){
<span style= "white-space:pre" > </span>println(x+ ": " +arr[x]);
<span style= "white-space:pre" > </span>}
<span style= "white-space:pre" > </span> print ( "<hr/>" );
for (x in p2){
println(x+ "------" +p2[x]);
}
</script>
|
Copier après la connexion
六、自定义对象
对js来描述对象--Person
1、方法1:本质上,有点类似于Java当中的直接new一个空参对象,然后往里面直接添加变量
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 36 37 38 39 40 41 42 43 44 45 46 47 48 49 | <script type= "text/javascript" >
function Person(){
println( "Person..." );
}
var p = new Person();
p.name = "Jack" ;
p.age = 24;
p.show = function (){
println(p.name+ "---" +p.age);
};
p.show();
var obj = new Object();
obj.name = "God" ;
obj.age =10000;
obj.show = function (){
println(obj.name+ "::::" +obj.age);
};
obj.show();
</script>
|
Copier après la connexion
2、方法2:更接近于Java当中的面向对象的方式----类的封装
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 36 37 38 39 40 41 42 43 44 45 46 47 48 49 | <script type= "text/javascript" >
function Person(name,age){
this.name = name;
this.age = age;
this.setName= function (name){
this.name = name;
};
this.getName= function (){
return this.name;
};
this.show= function (){
return "name:" +this.name+ ",age:" +this.age;
};
}
var p = new Person( "Tom" ,22);
println(p.name+ "===" +p.age);
p.setName( "Rose" );
println(p.show());
for (x in p){
println(x+ ":" +p[x]);
}
</script>
|
Copier après la connexion
3、方式3: map方式, key:value ----类似于java当中的数据封装,把数据封装到Map集合当中
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 | <span style= "font-weight: normal;" ><script type= "text/javascript" >
var pp = {
name: "张三" ,age: "23" ,
"getName" : function (){
return this.name;
}
};
println(pp.name+ "===" + pp.age);
println(pp.getName());
println( pp[ "name" ] );
var map={
8: "张三" , 3: "李四" , 5: "Jack"
};
var val = map[8];
println( "val:" +val);
</script> </span>
|
Copier après la connexion
4、map数据封装的进一步扩展
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 | <script type= "text/javascript" >
var myMap = {
names:[ "Jack1" , "Jack2" , "Jack4" ],
ages:[25,22,18]
};
println( "name:" + myMap.names[1]);
println( "age:" + myMap.ages[1]);
var myMap2 = {
names:[{name: "Jack1" },{name: "Jack2" },{name: "Jack4" }]
};
println( "name:" + myMap2.names[0].name);
myMap2.names[0][ "name" ]);
</script>
|
Copier après la connexion
5、对象的prototype属性
要给对象添加新功能时,直接采用“对象.prototype.新内容”的形式就可以。这内容可以是变量,也可以是函数。
1)为String对象添加一个自定义函数trim:剪去字符串两端的空格
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 36 37 | <script type= "text/javascript" >
function trim(str){
var start, end ;
start=0;
end =str.length-1;
while (start<= end && str.charAt(start)==' '){
start++;
}
while (start<= end && str.charAt( end )==' '){
end --;
}
return str.substring(start, end +1);
}
var s= " dsk dsds " ;
</script>
|
Copier après la connexion
2)添加变量
1 2 3 | String.prototype.aa = 200;
println( "abc123" .aa);
|
Copier après la connexion
3)添加函数
1 2 3 4 5 6 7 8 9 | String.prototype.trim = trim;
println( "<hr>" );
println( "aa3" .trim( " abc123 " ));
(这里的trim就是上面(1)里面自定义属性中的trim)
注:这里通过“aa3”.trim( " abc123 " )处理的是别的字符串并不是自己
|
Copier après la connexion
4)通过对象直接调用的函数(注意,一定要把前一版本当中的参数str改成this)
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 36 37 | <script type= "text/javascript" >
String.prototype.trim = function (){
var start, end ;
start=0;
end =this.length-1;
while (start<= end && this.charAt(start)==' '){
start++;
}
while (start<= end && this.charAt( end )==' '){
end --;
}
return this.substring(start, end +1);
};
println( " aa3 " .trim() );
var str2 = " 76jh dssdds " ;
println( str2.trim() );
</script>
注:这里是对自己进行处理
|
Copier après la connexion
6、对象原型修改练习
1)给String对象添加一个toCharArray()方法
2)给String对象添加一个reverse方法:将字符串反转
3)JS当中,函数内部是可以写函数的,而Java是做不到的。但Java有内部类
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 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 | <script type= "text/javascript" >
String.prototype.toCharArray= function (){
var chs=[];
for ( var x=0; x<this.length; x++){
chs[x] = this.charAt(x);
}
return chs;
};
String.prototype.reverse= function (){
function swap(arr,x,y){
var temp = arr[x];
arr[x] = arr[y];
arr[y] = temp;
}
var arr = this.toCharArray();
for ( var x=0,y=arr.length-1; x<y; x++,y--){
swap(arr,x,y);
}
return arr.join( "-" );
};
var str = "dsjk2323jkjkewio" ;
println( str.reverse() );
</script>
|
Copier après la connexion
以上就是JavaScript网页编程之------一些常用的对象的内容,更多相关内容请关注PHP中文网(www.php.cn)!