JavaScript(3)函数、对象

来源:互联网 发布:软件带有hd是什么意思 编辑:程序博客网 时间:2024/04/28 22:33

1.再次对JS的函数数组进行复习加强。

利用函数对数组进行求最值,输出封装,数组元素排序、查找和数组反转。

<span style="font-family:Times New Roman;font-size:14px;"><!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"><html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>JS语言(函数和数组)综合练习</title></head><body><h2>JS语言(函数和数组)综合练习</h2><script type="text/javascript">   //1 取最值   function getMax(arr){      var max=arr[0];      for(var i=1; i<arr.length; i++){        if(max<arr[i]){           max = arr[i];        }      }      return max;   }   var arr=[23,45,-4,-78,0,8];   var maxValue= getMax( arr );  // alert(maxValue);     //2 输出封装  function print(str){     document.write(str);  }  function println(str){     document.write(str+"<br/>");  }    print(arr);  print("<hr/>");  println(arr);    //3 排序  function sortArray( arr ){     for(var i=0;i<arr.length-1;i++){       for(var j=i+1;j<arr.length;j++){         if(arr[i]>arr[j]){            swap(arr,i,j);         }       }     }  }  function swap(arr,i,j){     var temp = arr[i];     arr[i] = arr[j];     arr[j] = temp;  }  sortArray(arr);  println("排序后:"+arr);//排序后     //4 元素查找  function searchElement(arr, key){     for(var i=0; i<arr.length;i++){       if(arr[i]==key){          return i;       }     }     return -1;  }  println( searchElement(arr,100) );    //5 二分查找  function binarySearch(arr, key){     var min,max,mid;//下标     min=0;     max=arr.length-1;     while(min<=max){       mid = (max+min)>>1;       if(key>arr[mid]){          min = mid+1;       }else if(key<arr[mid]){          max = mid -1;       }else{          return mid;       }     }     return -1;  }  println("二分查找结果: "+ binarySearch(arr,8) );    //6 数组反转(元素顺序反转)--原地修改  function reverse(arr){    for(var start=0,end=arr.length-1; start<end; start++,end--){      swap(arr,start,end);    }    return arr;  }   println("反转之后:" + reverse(arr) );   var arr2=[3,4,7,23,5,-3,89,5,-3,45,0,4,34];   println("初始:" + arr2 );   println("反转之后:" + reverse(arr2) );   sortArray(arr2);   println("排序后:"+arr2);//排序后   println("反转之后:" + reverse(arr2) );   //println("二分查找结果: "+ binarySearch(arr2,5) );//key应该唯一      </script></body></html></span>

2.全局变量和局部变量

<span style="font-family:Times New Roman;font-size:14px;"><!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"><html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>全局变量和局部变量</title></head><body><h2>全局变量和局部变量</h2><pre>   全局变量: js中变量的作用域不是以“大括号”来区分的,并且写在多个脚本代码段中的语句,和写在同一个脚本段中是一样的。   局部变量: js中变量的作用域是以“函数”来区分的,在函数内部声明的变量属于局部变量,在外面不能访问。 在函数内部是可以访问外部的全局变量的,但如果在内部定义了同名的变量,则会屏蔽掉外面的!</pre><script type="text/javascript">  for(var x=0; x<10; x++){  document.write("<br/>x="+x);  }  document.write("<br/>循环外面: x="+x);//x=10</script><script type="text/javascript">  document.write("<br/>另一段脚本: x="+x);//x=10</script><script type="text/javascript">   var y;   function show1(){  y = 100;//可以访问外面的全局变量,赋值之后,外面可以访问到   }   show1();   document.write("<br/>y=" + y);//100      var z;   function show2(){   var z=100;//在函数内部定义一个和外面同名的变量,则把外面的屏蔽掉了   }   document.write("<br/>z=" + z);//undefined</script>    </body></html></span>

3.JS中的对象

JS提供的内置对象:string,Object,Date

<span style="font-family:Times New Roman;font-size:14px;"><!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"><html><head>    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">    <title>Js中的对象</title>        <script type="text/javascript" src="out.js"></script></head><body>    <a name="head0"></a>    <h2>Js中的对象</h2>    <script type="text/javascript">      //1 Object对象          //var obj = new Object();            var obj= new Date();      //alert(obj.toLocaleString());            function aa(){          alert("aa");      }      //document.write( aa ); //等价于:aa.toString()   -->   function aa(){ alert("aa"); }      //document.write("::"+ aa.toString() ); //function aa(){ alert("aa"); }      document.write(">>> "+ aa.valueOf() ); //function aa(){ alert("aa"); }            var arr=[23,3,4.5,89,0,-3,5];      document.write("<br/>"+ arr);      document.write("<br/>:: "+ arr.toString());      document.write("<br/>>> "+ arr.valueOf());          </script>        <hr/>    <script type="text/javascript">       //1 String对象       var str = "abc123";       println(str);       println( str.length );             // document.write( str.bold() );      for(var i=1;i<10;i++){          var s = str.fontsize(i);//<font size="i"> str </font>          //alert(s);          s = s.fontcolor("red");          println( s );      }                  println( str.charAt(2));      println( str.concat(s) );      println( str.indexOf("bc", 0));      println( str.link("http://www.baidu.com"));      println( str.replace("a", "u"));    </script>            <a href="#head0">回到页面起始处</a></body></html></span>




0 0
原创粉丝点击