JAVA_web BOM、DOM编程案例

循环语句案例

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<script type="text/javascript">
/*
if 
switch
switch语句的特殊之处: case后面可以跟常量与变量或者是表达式。
循环语句:
while

格式:
while(判断的条件){
循环体内容
}


var count = 0 ; 
while(count<5){
document.write("hello world<br/>");
count++;
}
需求: 计算1~100的总和。

var num = 1;
var result = 0;
while(num<=100){
result +=num;
num++;
}

document.write("结果:"+result);
do-while循环语句


do{
循环语句;
}while(判断条件);

需求;计算1~100奇数的总和。


var num = 1;
var result = 0;
do{
if(num%2!=0){
result +=num;
}
num++;
}while(num<=100);
document.write("结果:"+result);

for循环语句:

格式:
for(初始化语句; 判断的条件 ; 循环后的语句){
循环体语句;
}

需求;计算1~100偶数的总和。
*/

var result = 0 ;
for(var i =  1 ; i<=100 ; i++){
if(i%2==0){
result +=i;
}
}

document.write("结果:"+result);

</script>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
</head>
<body>
</body>

</html>

for循环语句练习(案例)

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<script type="text/javascript">
//需求1:显示"*"为正方形,5行5列。

for(var i = 0 ; i<5;  i++){ // 控制行数
for(var j  = 0 ; j<5 ; j++){ //控制列数
document.write("*&nbsp;");
}
//换行
document.write("<br/>")
}

document.write("<hr/>")


/*
输出一个直角三角形


*
**
***
****
*****


*/

for(var i = 0 ; i<5; i++){

for(var j  =0 ; j<=i ; j++){
document.write("*&nbsp;");
}
document.write("<br/>");
}


document.write("<hr/>")




//打印九九乘法表
for(var i = 1 ; i<= 9 ; i++){
for(var j = 1 ; j<=i ; j++){
document.write(i+"*"+j+"="+(i*j)+"&nbsp;&nbsp;");
}
document.write("<br/>");
}





</script>




<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
</head>


<body>
</body>

</html>

for-in语句(案例)

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<script type="text/javascript">


/*
for-in语句:


for-in语句的格式:

for(var 变量名 in 遍历的目标){

}


for-in语句的作用:
1. 可以用于遍历数组的元素。  注意: 使用for-in语句遍历数组元素的时候遍历出来是数组的下标。

2. 可以用于遍历对象的所有属性数据。 注意: 使用for-in语句遍历对象的属性的时候,遍历出来的是对象的属性名。
*/


var arr = [12,13,19,15,16];


/*
for-in语句遍历数组元素
for(var index in arr){
document.write(arr[index]+",");
}


普通的for循环遍历数组的元素


for(var index = 0 ; index<arr.length ; index++){
document.write(arr[index]+",");
}
*/

function Person(id , name){
this.id = id;
this.name = name;
}



//创建一个对象
var  p = new Person(110,"狗娃");




for(var property in p){
document.write(p[property]+",");
}


</script>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
</head>


<body>
</body>

</html>

with语句(案例)

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<script type="text/javascript">
/*
with语句:有了 With 语句,在存取对象属性和调用方法时就不用重复指定对象。



格式:
with(对象){



}





*/


with(document){
for(var i = 0 ; i<5; i++){

for(var j  =0 ; j<=i ; j++){
write("*&nbsp;");
}
write("<br/>");
}
write("<hr/>");
}




function Person(id , name){
this.id = id;
this.name = name;
}

//创建一个对象
var  p = new Person(110,"狗娃");


with(p){
document.write("编号:"+ p.id);
document.write("姓名:"+ name);
}


</script>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
</head>


<body>
</body>

</html>

函数的定义(案例)

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<script type="text/javascript">
/*
函数:




函数的定义格式:

function 函数名(形参列表){
函数体 ;
}


javascript的函数要注意的细节:
1. 在 javascript中函数 定义形参时是不能使用var关键字声明变量 的。
2. 在javascript中 的函数是没有 返回值类型 的,如果函数需要返回数据给调用者,直接返回即可,如果不需要返回则不返回。
3. 在 javascript中是没有函数 重载 的概念 的,后定义的同名函数会直接覆盖前面定义同名函数。
4. 在javascript中任何的函数内部都隐式的维护了一个arguments(数组)的对象,给函数 传递数据的时候,是会先传递到arguments对象中,
然后再由arguments对象分配数据给形参的。





需求:定义一个函数做两个参数的加法功能。
*/
function  add(a,b){
var sum = a+b;
document.write("两个参数的总和:"+ sum);
//return sum;
}

function add(){
document.write("长度:"+arguments.length+"<br/>");
for(var index = 0 ; index<arguments.length ; index++){
document.write(arguments[index]+",");
}

//var sum  = a+b+c;
//var sum = 0;
//document.write("三个参数的总和:"+ sum);
}



//调用函数
add(11,21,13,14);

</script>

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
</head>


<body>
</body>

</html>

函数的练习(案例)

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<script>


function showDay(){
//找到对应 的标签对象。
var inputObj = document.getElementById("month");
//获取input标签数据
var month = inputObj.value;
/*
if(month==1||month==3||month==5||month==7||month==8||month==10||month==12){
alert("本月是31天");
}else if(month==4||month==6||month==9||month==11){
alert("本月是30天");
}else if(month==2){
alert("本月是28天");
}else{
alert("没有该月份");
}
*/

month = parseInt(month);
switch(month){
case 1:
case 3:
case 5:
case 7:
case 8:
case 10:
case 12:
alert("本月是31天");
break;
case 4:
case 6:
case 9:
case 11:
alert("本月是30天");
break;
case 2:
alert("本月是28天");
break;
default:
alert("没有该月份");
break;

}


}

</script>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
</head>
<body>
月份:<input id="month" type="text" /><input type="button" value="查询" οnclick="showDay()" />

</body>

</html>

String对象(案例)

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<script type="text/javascript">


/*
var str1 = new String("hello");
var str2 = new String("hello");
document.write("两个字符串的对象一样吗?"+(str1.toString()==str2.toString()));


创建一个字符串的方式:
方式1:
new String("字符串的内容");

方式2:
var str = "字符串的内容";






字符串常用的方法:
anchor()   生产锚点
blink()     为元素添加blink标签 
charAt()     返回指定索引位置处的字符。
charCodeAt() 回一个整数,代表指定位置上字符的 Unicode 编码。


fontcolor()  把带有 COLOR 属性的一个 HTML <FONT> 标记放置在 String 对象中的文本两端

indexOf()    返回 String 对象内第一次出现子字符串的字符位置


italics()    把 HTML <I> 标记放置在 String 对象中的文本两端。 

link()         把一个有 HREF 属性的 HTML 锚点放置在 String 对象中的文本两端。

replace()      返回根据正则表达式进行文字替换后的字符串的复制

split()        切割   

Substr()       截取子串
toUpperCase()  转大写
toLowerCase    转小写
*/
document.write("第五章".anchor("five")+"<br/>");
document.write("第五章".blink()+"<br/>");
document.write("abc".charAt(1)+"<br/>");
document.write("abc".charCodeAt(1)+"<br/>"); //chatCodeAt返回的是索引值对应的字符的码值。 
document.write("第六章".fontcolor("red")+"<br/>"); //fontcolor() 给字符串添加font标签,然后设置color的属性值。
document.write("abchellohehehello".indexOf("hello")+"<br/>"); //返回指定字符串第一次出现的索引值。
document.write("第五章".italics()+"<br/>"); //给文本添加一个i标签,把文本内容设置成斜体。
document.write("腾讯".link("http://www.itcast.cn")+"<br/>"); // 给文本添加一个a标签,
document.write("明天我们讲xml".replace("xml","DOM编程")+"<br/>"); // 给文本添加一个a标签,

var str = "我们-大家-好";
var arr = str.split("-");
for(var index = 0 ; index<arr.length ; index++){
document.write(arr[index]+",");
}
document.write("<br/>");
document.write("abc".toUpperCase()+"<br/>"); //转大写
document.write("ABC".toLowerCase()+"<br/>");  //转小写

</script>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
</head>
<body>
</body>

</html>


Date对象(案例)

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<script type="text/javascript">
/*
日期对象(Date)




*/
var date = new Date(); //获取到当前的系统时间
document.write("年:"+ date.getFullYear()+"<br/>");
document.write("月:"+ (date.getMonth()+1)+"<br/>");
document.write("日:"+ date.getDate()+"<br/>");

document.write("时:"+ date.getHours()+"<br/>");
document.write("分:"+ date.getMinutes()+"<br/>");
document.write("秒:"+ date.getSeconds()+"<br/>");

//xxxx年yy月dd日  hh:mm:ss

//document.write("当前时间是:"+date.toLocaleString());
document.write("当前时间是:"+date.getFullYear()+"年"+(date.getMonth()+1)+"月"+date.getDate()+"日 "+
date.getHours()+":"+date.getMinutes()+":"+date.getSeconds());


</script>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
</head>
<body>

</body>
</html>


显示当前系统时间

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>




<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
</head>
<body>
当前系统时间:<span id="time"></span>
</body>




<script type="text/javascript">

function getCurrentTime(){
//获取到当前的系统时间
var date = new Date();
//把当前系统时间拼装成我指定的格式。
var timeInfo =  date.getFullYear()+"年"+(date.getMonth()+1)+"月"+date.getDate()+"日 "+
date.getHours()+":"+date.getMinutes()+":"+date.getSeconds();

//找span对象
var  spanObj = document.getElementById("time");
//设置span标签体的内容
spanObj.innerHTML = timeInfo.fontcolor("red");
}


getCurrentTime();

//定时方法.
window.setInterval("getCurrentTime()",1000); /* setInterval   定时方法,第一个参数要指定调用的代码,第二参数是每                                                隔指定的毫秒数调用指定的代码。*/



</script>
</html>

Number对象

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<script type="text/javascript">
/*
Number对象。

创建Number对象的方式:

方式1:
var 变量=  new Number(数字)

方式2:  
var 变量 = 数字;

常用的方法:
toString()  把数字转换成指定进制形式的字符串。
toFixed()   指定保留小数位,而且还带四舍五入的功能。
*/

var  num = 10; // 十进制
document.write("十进制:"+num.toString()+"<br/>");
document.write("二进制:"+num.toString(2)+"<br/>"); 
document.write("八进制:"+num.toString(8)+"<br/>"); 
document.write("十六进制:"+num.toString(16)+"<br/>"); 
document.write("三进制:"+num.toString(3)+"<br/>");   // 101
var num2 = 3.455;
document.write("保留两位小数:"+num2.toFixed(2))

</script>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
</head>


<body>
</body>

</html>

Math数学对象(案例)

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<script type="text/javascript">
/*
Math对象常用的方法:


 ceil 向上取整
 floor()   向下取整
 random()  随机数方法 //  产生的伪随机数介于 0 和 1 之间(含 0,不含 1),
 round     四舍五入
*/
document.write("向上取整:"+ Math.ceil(3.14)+"<br/>");
document.write("向下取整:"+ Math.floor(3.14)+"<br/>");
document.write("随机数:"+ Math.random()+"<br/>");
document.write("四舍五入:"+ Math.round(3.75)+"<br/>");

</script>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
</head>

<body>
</body>

</html>

数组对象(案例)

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<script type="text/javascript">
/*
Array数组对象:
创建数组的方式1:
var 变量名 = new Array();  创建一个长度为0的数组。

方式2:
var 变量名= new Array(长度) 创建一个指定长度的数组对象。

方式3:
  var 变量名 = new Array("元素1","元素2"...);  给数组指定元素创建数组 的对象。

方式4: 
var 变量名 = ["元素1","元素2"...];



数组要注意的细节:
1.  在javascript中数组的长度是可以发生变化的。


*/

var arr = new Array(3); //创建了一个长度为0的数组对象。
arr[100] = 10;
document.write("arr长度:"+arr.length+"<br/>");

var arr2 = new Array("狗娃","狗剩","铁蛋");
arr2 = ["狗娃","狗剩","铁蛋","张三"];
document.write("arr2长度:"+arr2.length+"<br/>");

</script>


<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
</head>

<body>
</body>

</html>

数组常用的方法(案例)

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<script type="text/javascript" >


var arr1 = ["狗娃","狗剩","铁蛋"];
var arr2 = ["永康","才厚"];

/*
arr1 = arr1.concat(arr2); //concat把arr1与arr2的数组元素组成一个新的数组返回。
for(var index in arr1){
document.write(arr1[index]+",");
}


var elements = arr1.join(","); // join使用指定的分隔符把数组中的元素拼装成一个字符串返回。
document.write("数组的元素:"+elements);


pop :移除数组中的最后一个元素并返回该元素。

document.write("删除最后的一个元素并返回:"+arr1.pop()+"<br/>");

arr1.push("永康"); // 将新元素添加到一个数组中,并返回数组的新长度值。

arr1.reverse(); //翻转数组的元素

document.write("删除第一个元素并返回:"+arr1.shift()+"<br/>"); //移除数组中第一个元素,并且返回。


var subArr = arr1.slice(1,2); //指定数组 的开始索引值与结束索引值截取数组的元素,并且返回子数组。
document.write("子数组的元素:"+subArr.join(",")+"<br/>");




arr1 = [19,1,20,5];
arr1.sort(sortNumber);  //排序,排序的时候一定要传入排序的方法。

function sortNumber(num1,num2){
return num1-num2;
}


arr1.splice(1,1,"张三","李四","王五"); //第一个参数是开始删除元素的 索引值, 第二参数是删除元素的个数,往后的数据就是插入的元素。

*/

document.write("数组的元素:"+arr1.join(","));

</script>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
</head>


<body>
</body>

</html>

自定义对象(案例)

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<script type="text/javascript">
/*
自定义对象:

在javascript没有类的概念,只要有函数即可创建对象。



自定义对象的方式1: 使用无参的函数创建对象。

例子:

function Person(){}
var p = new Person(); //创建了一个Person对象了
p.id = 110;
p.name = "狗娃";

方式2:使用带参的函数创建对象。

function Person(id,name){
this.id = id;
this.name = name;
this.say = function(){
alert(name+"呵呵");
}
}

var p = new Person(110,"狗剩"); //创建对象



方式3: 使用Object函数创建对象

var p = new Object();
p.id = 110;
p.name = "铁蛋";

方式4:使用字面量的方式创建.


var p = {
id:110,
name:"狗娃",
say:function(){
alert(this.name+"呵呵");
}
}

*/

var p = {
id:110,
name:"狗娃",
say:function(){
alert(this.name+"呵呵");
}
}



document.write("编号:"+ p.id+" 姓名:"+ p.name);
p.say();




</script>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
</head>


<body>
</body>

</html>

自定义一个数组工具对象(案例)

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<script src="ArrayTool.js" type="text/javascript"></script>
<script type="text/javascript">


var arr = [12,15,9,4];
var max = tool.getMax(arr);
document.write("最大值:"+ max+"<br/>");

var index = tool.searchEle(arr,9);
document.write("找到的索引值是:"+ index);

</script>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
</head>
<body>
</body>

</html>

protortype原型属性(案例)

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<script type="text/javascript">
/*
需求:想把getMax与searchEle方法添加 到数组对象中。


functoin Array(){
this.prototype = new Object();

this.getMax = function(){

}
}
Prototype注意的细节:
1. prototype是函数(function)的一个必备属性(书面一点的说法是"保留属性")(只要是function,就一定有一个prototype属性)
2. prototype的值是一个对象
3. 可以任意修改函数的prototype属性的值。
4. 一个对象会自动拥有prototype的所有成员属性和方法。

*/

Array.prototype.getMax = function(){
var max = this[0];
for(var index = 1; index<this.length ; index++){
if(this[index]>max){
max = this[index];
}
}
return max;
}


Array.prototype.searchEle = function(target){
for(var i = 0 ; i<this.length ; i++){
if(target==this[i]){
return i;
}
}
return -1;

}





//var arr = new Array(12,4,17,9);
var arr = [12,4,17,9];
var max = arr.getMax();
var index = arr.searchEle(9);
document.write("最大值:"+ max+"<br/>");
document.write("索引值:"+ index+"<br/>");




</script>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
</head>


<body>
</body>

</html>

prototype的应用(案例)

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<script type="text/javascript">
/*
练习: 给字符串对象添加一个toCharArray的方法,然后再添加一个reverse(翻转)的 方法
*/


//把 字符串转换成字符数组
String.prototype.toCharArray = function(){
var arr = new Array();
for(var index = 0; index<this.length ;index++){
arr[index] = this.charAt(index);
}
return arr;
}



String.prototype.reverse = function(){
//想把字符串转换成字符数组
var arr = this.toCharArray();
arr.reverse();
return arr.join("");
}

var str = "你们厉害啊";
var charArr = str.toCharArray();
document.write("数组的元素:"+charArr.join(","));


str = str.reverse();
document.write("<br/>翻转后的字符串:"+str);

</script>


<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
</head>


<body>
</body>
</html>
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

晓 5

有啥不懂的可以单聊解答....

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值