JavaScript(2)语法学习

原创 2016年08月29日 21:50:38
3.语句(与Java语句格式相同)
 1.判断结构(if语句)
    注:var x = 3;
        if(x==4)//可以进行比较运算。
        if(x=4)//可以进行赋值运算,而且可以同样进行判断。不报错。
        因为在Js中0或者null就是false,
   非0或者非null就是true(通常用1表示)。
        所以if(x=4)结果是true;
   可以通过if(4==y)来解决该问题。因为4=y不会进行判断,而是会报错。
 2.选择结构(switch语句)
   与java不同的是:因为弱类型,也可以对字符串进行选择。
 3.循环结构(while语句,do…while语句,for语句)。

注:不同的是,没有了具体数据类型的限制,使用时要注意。

<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>
		<script type="text/javascript">
		   //☆6.6 ?号表达式
		   var x=3;
		   document.write( x>2 ? "abc" : "nonono"  );
		   document.write("<font color='red'> x="+ x +"</font>");
		   document.write("<hr/>");
		   
		   //☆6.7 选择语句
		   if(3==x){  //if(x=3){//if(x-3){//if(x==3){
		      document.write("yes");
		   }else{
		      document.write("no");
		   }
		   
		   document.write("<br/>");
		   x=3; //if- else if - else   多选一的结构
		   if(x>0){
		      document.write("a");
		   }else if(x>1){
		      document.write("b");
		   }else if(x>2){
		      document.write("c");
		   }else{
		      document.write("d");
		   }
		   
		   /*
		   var x="aac";
		   switch(x){
		     case "aa":
		       alert("11"); break;
		     case "bb":
		       alert("22"); break;
		     case "abc":
		       alert("33"); break;
		     default:
		       alert("other");
		   }
		   */
		   
		</script>
		
		<script type="text/javascript">
		   //☆6.8 循环结构
			//while语句
			var x=1;
			var sum=0;
			document.write("<br/><font color='red'>");
			while(x<=10){
			  sum +=x;
			  document.write("x=" + x + "<br/>");
			  x++;
			}
			document.write("</font>");
			document.write("sum="+sum);
			
			//do-while语句
			x=1;
			do{
			  document.write("x=" + x + "<br/>");
			  x++;
			}while(x<=10);
			
			document.write("<hr/>");
			//for循环
			for(var x=1;x<=10;x++){
			  document.write("x=" + x + "<br/>");
			}
			
			a:for(var x=0; x<3; x++){
			    for(var y=0; y<4; y++){
			       document.write(x+","+y+" ");
			       break a;//continue;//break;
			    }
			    document.write("<br/>");
			}
			
		</script>
		
		
	</body>
</html></span>

利用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输出9*9乘法表</title>
		<style type="text/css">
		  table{
		     width=70%;
		     border: 1px solid blue;
		     border-collapse: collapse;
		  }
		  td{
		     border: 1px solid blue;
		     padding:5px;
		  }
		</style>
	</head>
	<body>
	   <script type="text/javascript">
	      for(var x=1; x<=9; x++){
	        for(var y=1; y<=x; y++){
	          //3*4=12
	          document.write(x + "*" + y + "=" + x*y +" ");
	        }
	        document.write("<br/>");
	      }
	   	
	   	  document.write("<hr/>");
	   	  document.write("<table>");
	   	  for(var x=1; x<=9; x++){
	        document.write("<tr>");
	        for(var y=1; y<=x; y++){
	          //3*4=12
	          document.write("<td>"+x + "*" + y + "=" + x*y +"</td>");
	        }
	        document.write("</tr>");
	      }
	   	  document.write("</table>");
	   	  
	   </script>
	   
	   
	</body>
</html></span>

效果展示:

4.函数
1.一般函数
 格式:   
   function  函数名(形式参数...)   
   {
     执行语句;
     return 返回值;
   }
 函数是多条执行语句的封装体,只有被调用才会被运行。
注意:调用有参数的函数,但没有给其传值,函数一样可以运行,或者调用没有参数的函数,给其传值,该函数也一样运行。
说的简单点:只要写了函数名后面跟了一对小括号,该函数就会运行。那么传递的参数呢?
其实,在函数中有一个参数数组对象(arguments),该对象将传递的参数都封装在一个数组中。
 例:
   function demo()//定义函数。
   {
     alert(arguments.length);
   }
   demo(“hello”,123,true);//调用函数。
那么弹出的对话框结果是3,如果想得到所有的参数值,可以通过for循环遍历该数组。
   for(var x=0; x<arguments.length; x++)
   {
     alert(arguments[x]);
   }
为了增强阅读性,最好按照规范,按定义好的形式参数传递实际参数。
函数在调用时的其他写法:
   var show = demo();//show变量接收demo函数的返回值。
   var show = demo;//这种写法是可以的,意为show和demo代表同一个函数。
                //那么该函数也可以通过show()的方式运行。

   动态函数
    通过Js的内置对象Function实现。
    例:var demo = new Function(“x,y”,”alert(x+y);”);
        demo(4,6);
        如同:
        function demo(x,y)
        {
            alert(x+y);
        }
        demo(4,6);
    不同的是,动态函数,参数以及函数体都可以通过参数进行传递,可以动态指定。


   匿名函数
        格式:function(){...}
        例:var demo = function(){...}
            demo();
        通常在定义事件属性的行为时较为常用。
        例:
        function test()
        {
            alert(“load ok”);
        }
        window.onload = test;
        可以写成匿名函数的形式:
        window.onload = function()
        {
            alert(“load ok”);
        }
        匿名函数就是一种简写格式。   

<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">
		   /*
		   function aaa(){
			   alert("页面加载完毕!");
		   }
		   onload=aaa;
		   */
		   
		   onload = function(){
			   alert("页面加载完毕!");
		   };
		   
		</script>
	</head>
	<body>
	<!-- 

		函数定义格式:
			function 函数名(形式参数...)
			{
				执行语句;
				return 返回值;
			}

	-->
		
		<script type="text/javascript">
		   //※1 函数定义与调用
		
		   //空参、无返回值
		   function hello(){
				alert("hello funcion...");			   
		   }//定义
		   
		   //hello();//调用
		   //hello();//调用
		
		   //有参数、有返回值
		   function add(x, y){
			   return x+y;
		   }
		   var sum = add(12,23);
		   document.write( "sum="+ sum );
		   
		   //1+2+...+n
		   function sum2( n ){
			   var s=0;
			   for(var i=1;i<=n;i++){
				   s +=i;
			   }
			   return s;
		   }
		   
		   document.write( "sum2="+ sum2(10) );
		   
		</script>
		
		<script type="text/javascript">
		  //※2 函数的一些细节1: js中的函数是没有重载的,参数是按顺序自动匹配,并且参数是由函数内置的arguments数组来接收值的
		  function show(x,y){
			  alert(x+ ":" + y);
		  }
		  //show(1,2);// 1:2
		  //show(1);// 1:undefined
		  //show();//undefined:undefined
		  //show(1,2,3);// 1:2
		  
		  //有关函数参数的内部原理: 函数内部通过“内置的arguments数组”来接收外面传入的参数,如果函数声明了参数,那么会按顺序依次把arguments中的元素赋给这些参数
		  document.write("<hr/>");
		  function aa(){
			for(var i=0; i<arguments.length;i++){
				document.write(arguments[i]+" ");
			}
			document.write("<br/>");
		  }
		  aa();
		  aa(1);
		  aa(1,3);
		  aa(1,3,5);
		  
		</script>
		
		<script type="text/javascript">
		  //※2 函数的一些细节2: 函数在内存中的存储形式:栈区中存入函数名(引用),所对应的function对象存放在堆内存中。	如果进行了引用赋值,那么多个引用都同样指向该function对象
		  function fun(){
			  return 100;
		  }
          var x = fun();
          //alert("x:"+ x );
          var y= fun; //函数引用fun和y捆绑,等价
          //alert( y ); //alert( fun );
          //alert("y:"+ y() );
          
		</script>
		
		动态函数功能:<input type="text" onblur="ac();">
		
		<script type="text/javascript">
		   //动态函数---思想,类似java中的类反射
		    var ssum = new Function("x,y", "var sum; sum=x+y; return sum;");
			var s = ssum(100,200);
			//alert("s="+ s);
		   
			/*
			  function ssum(x,y){
				var sum; sum=x+y; return sum;
			  }
			*/
			
			function ac(){
				var obj = document.getElementsByTagName("input")[0];
				var text = obj.value;
				//alert(text);
				var dd = new Function("x,y", text);
				var s = dd(10,20);
				alert("s="+ s);
			}
		</script>
		
		<script type="text/javascript">
		   //匿名函数
		   var xyz = function(a,b){
			   return a+b;
		   };
		   alert( xyz(12,21) );
		   function aa(){
			   alert("aaa...");
		   }
		</script>
		<input type="button" value="别点我" onclick="aa();">
		
	</body>
</html>

</span>

5.数组
    方便操作多元素的容器,可以对其中的元素进行编号。
    特点:可以存任意元素,长度是可变的。
    格式:
    var arr = new Array();
    arr[0] = “hello”;
    arr[1] = 123;
    var arr = [‘hello’,123,true,”abc”];
    通过遍历即可对数组进行基本操作。
    for(var x=0; x<arr.length; x++)
    {
        alert(arr[x]);
    }

<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>
		<script type="text/javascript">
		   //7 数组
		   //var ar[] = {1,3,5};//错错错--这是java
		   var ar=[1,3,5,8]; //这里不能用“var[] ar”的方式声明数组,因为“[]”是代表数组类型,而js是弱类型,所有数据类型都是var
		   //alert( typeof(ar) ); 
		   //alert(ar.length); //4
			for(var i=0;i<ar.length;i++){
			   document.write(ar[i]+" ");
			}//1 3 5 8 
			
			document.write("<br/>");
			ar[2] = 100;
			for(var i=0;i<ar.length;i++){
			   document.write(ar[i]+" ");
			} //1 3 100 8 
			
			document.write("<br/>");
			ar[5] = 100;
			for(var i=0;i<ar.length;i++){
			   document.write(ar[i]+" ");
			} //1 3 100 8 undefined 100
			//js数组知识点1: 长度可以是任意的
			
			document.write("<br/>");
			ar[1]=true;//"abc";
			for(var i=0;i<ar.length;i++){
			   document.write(ar[i]+" ");
			} //1 3 100 8 undefined 100
			//js数组知识点2: 元素的数据类型也可以是任意的
			
			//总之,js中没有集合,数组就是集合----js中的数组 等于java中的数组+集合
			
		</script>
		
		<script type="text/javascript">
		   //使用Array对象定义数组
		   var ar2 = new Array();//相当于: var ars=[];
		   ar2[0]=2;
		   ar2[3]=20;
		   document.write("<br/>");
			for(var i=0;i<ar2.length;i++){
			   document.write(ar2[i]+" ");
			}//2 undefined undefined 20  
		   
		   var ar3 = new Array(4); //一个参数代表的是长度。本例是声明初始长度为4的数组
		   document.write("<br/>");
			for(var i=0;i<ar3.length;i++){
			   document.write(ar3[i]+" ");
			}// 
		   
		   var ar4 = new Array(4,5,6);//如果参数个数大于1,则代表的是元素
		   document.write("<br/>");
			for(var i=0;i<ar4.length;i++){
			   document.write(ar4[i]+" ");
			}

		</script>
		
		
		<script type="text/javascript">
		   var arr=[];//声明一个空数组, 注意不能声明成:var arr;
		   //var arr;//要声明成上面的方式,才是数组
		   arr[0] = 1;
		   arr[1] = 2;
		   //alert(arr);
		   
		   //两维数组
		   arr[0] = [1,3,5];//等价于:  arr[0] = new Array(1,3,5);
		   arr[1] = [2,4,6,99];
		   //alert(arr[0]);//1,3,5
		   document.write("<hr/>");
		   for(var i=0;i<arr.length;i++){
		       for(var j=0; j<arr[i].length; j++){
			     document.write(arr[i][j]+" ");
		       }
		       document.write("<br/>");
		   }
		   
		</script>
		
		
	</body>
</html></span>


版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

韩顺平 javascript教学视频_学习笔记2_js运行原理_js开发工具介绍_js程序(hello)_js基本语法

js运行原理 js运行原理和Html的运行原理一样,在韩顺平老师《PHP从入门到精通》教学视频里有详细的解释 以js嵌入到html为例说明: 本地运行 远程访问运行 万维网(www)...

javascript学习记录2—运行,开发工具,helloworld,基本语法

一:js运行相关知识 1. 服务器端发送html/js文件到浏览器。 2. 要支持W3C规范。 3. js是基于对象和事件驱动的,是跨平台的。二:js开发工具 1. notepad,ecli...

Javascript2-基础语法

  • 2013-11-14 23:19
  • 1.60MB
  • 下载

javaScript基础语法01-上下2部分

javaScript基础语法01 /* 这里是多行注释 javascript代码可以放在任何地方和位置都可以,一般放在head标签里面,javascript代码放在head标签中不利于搜索引擎搜索到...

[2] CSS&javascript(基本语法及使用)

一、     CSS概述 1、CSS是什么?  * CSS (CascadingStyle Sheets)指层叠样式表 2、CSS有什么作用?       *CSS就是用来修饰HT...

【知识整理】javascript基础语法总结(2)——数据类型转换和运算符

一.数据类型转换:(js是弱类型编程语言);    1.声明变量时,不用考虑变量中将要存储的数据类型;    2. 赋值时,由系统自动动态判断数据的类型;(注:因为是动态判断同一个变量,先后可保存不同...

Python和JavaScript在语法上的区别[2]

定义函数 在Js中声明函数是通过function 关键字,在python中,是通过def关键字,def的英文全称为define,在函数的块级中,Js是通过{}符合进行打包,而python则是使用:进行...

Javascript高级程序设计——2.语法、关键保留字、变量

1、语法构成 (1)区分大小写      解析:在ECMAScript中的一切,包括变量、函数名、操作符都是区分大小写的   示例1—— text、Text是两种不同的变量。 (2)...

2. javascript基本语法

<!-- 1.javascript语句用分号来分隔,对于一行只有一句javascript代码,分号是可选的。 2.javascript代码块用{}包围 ...

javascript基本语法2 引用类型------数组

数组:            在javascript中数组也是一种对象。           特点: ...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)