`

JS面向对象编程总结二

    博客分类:
  • JS
阅读更多
<html>
        <head>
	<script type="text/javascript">
	     
	     //创建函数:function f(x) {........}
			 //var f = function(x) {......}
       //上面这两种形式都可以创建名为f()的函数,后一种形式可以创建匿名函数
       //函数定义时可以设置参数,如果传给函数的参数个数不够,则从最左边起依次对应,其余的用undefined赋值,
       //如果传给函数的参数多于函数定义参数的个数,则多出的参数被忽略.

	     function myprint(s1,s2,s3)
	     {
	     	    alert(s1+"_"+s2+"_"+s3);
	     }
	     
	     function test1(){
	     	
		     myprint();//undefined_undefined_undefined   

		     myprint("string1","string2");// //string1_string2_undefined   
		     myprint("string1","string2","string3","string4"); // //string1_string2_string3
		    
	    }
	    
	    function myprint2(s1,person)
	    {
	    	 var defaultperson=
	    	 {"name":"name1",
	    	 	"age":18,
	    	 	"sex":"female"  
    			};
    			
    			if(!s1)
    			{
    				 alert("s1 must be input!");
    				 return false;
    			}
    			
    			alert(person);//undefined;
    			person=person||defaultperson;//接受person对象参数
    			//JScript 使用下面的规则来把非 Boolean 值转换为 Boolean 值: 
    			//所有对象都被认为是 true。 
    			//字符串当且仅当为空时才被认为是 false。 
    			//null 和 undefined 被认为是 false。 
    			//数字当且仅当为 0 时才是 false。 
    			alert(s1+"_"+person.name+":"+person.age+":"+person.sex);
    			
    			
	    };
	    
	    function test2()
	    {
	    		myprint2();//s1 must be input!
	    		myprint2("s1");//s1_name1:18:female
	    	  myprint2("s1",{"name":"latty","age":23,"sex":"male"});
	    		
	    }
	    
	    
	    //函数的arguments属性
	    //在每一个函数体的内部,都有一个arguments标识符,这个标识符代表了一个Arguments对象.
	    //Arguments对象非常类似于Array(数组)对象,都有length属性,用"[]"操作符利用索引来访问参数值,
      //(比如说修改Arguments对象的length属性并不会改变它的长度).
      
      function myargs()
      {
      	alert(arguments.length);
      	
      	alert(arguments[0]);
      }
      
      
      // Arguments对象有一个callee属性,标示了当前Arguments对象所在的方法.
      //可以使用它来实现匿名函数的内部递归调用.


      
      function test3()
      {
      	
      	myargs();
      	myargs("1",[1,2]);
      	
      }
      
      //method方法
      //方法就是函数.每一个对象都包含0个或多个属性,属性可以是任意类型,
      //函数本身就是一种对象,因此我们完全可以把一个函数放到一个对象里面,
      //此时,这个函数就成了对象的一个方法.此后如果要使用该方法,
      //则可以通过对象名利用"."操作符来实现.

    
      var obj = {
    	 f0:function()
    	 {
    		 alert("f0");
    	 }
     }; //对象包含一个方法   

		function f1() {alert("f1");}   
		     

	  
	  function test4()
	  {
	  	obj.f1 = f1;    //为对象添加方法   
  
			obj.f0(); //f0  f0是obj的方法   
			obj.f1(); //f1  f1是obj的方法   
			f1();     //f1  f1同时又是一个函数,可以直接调用   
			f0();    //f0仅仅是obj的方法,只能通过对象来调用  
    }
    
    //在javascript的方法中,我们可以用this来取得对方法调用者(对象)的引用,从而获取方法调用者的各种属性.
    
    
    function test5()
    {
    	var obj = {"name":"NAME","sex":"female"};   
			obj.print = function() {  //为对象添加方法   
			    alert(this.name + "_" + this["sex"]);   
			};   
			obj.print();  //NAME_female   
			obj.sex = "male";   
			obj.print();  //NAME_male  
		}
		
		
		
		//
		function test6()
		{
			
			var person = {
				      name:"defaultname",   
              setName:function(s){   
              this.name = s;   
              },   
              "printName":function(){   
              alert(this.name);   
              }
          }   
			person.printName();       //defaultname   
			person.setName("newName");   
			person.printName();       //newName  
	
		}
		
		
    //函数的prototype属性
    //每一个函数都包含了一个prototype(原型)属性,这个属性构成了javascript面向对象的核心基础
    


	    
				
	</script>
         </head>
	<body>
	<input type="button" value="test1" onclick="test1();"/><br/> 
	<input type="button" value="test2" onclick="test2();"/><br/> 
	<input type="button" value="test3" onclick="test3();"/><br/> 
	<input type="button" value="test4" onclick="test4();"/><br/> 
	<input type="button" value="test5" onclick="test5();"/><br/> 
	<input type="button" value="test6" onclick="test6();"/><br/> 
	
  	       
</body>
</html>
分享到:
评论

相关推荐

    Javascript面向对象编程.

    在提供的资源中,《代码之美》PDF文件可能包含了关于编程实践和代码风格的指导,而《Javascript面向对象编程》PPT可能更具体地阐述了JavaScript OOP的细节和示例。学习这些材料将有助于深入理解JavaScript的面向对象...

    JavaScript面向对象编程指南

    《JavaScript面向对象编程指南》内容包括:JavaScript作为一门浏览器语言的..., 《JavaScript面向对象编程指南》着重介绍JavaScript在面向对象方面的特性,展示如何构建强健的、可维护的、功能强大的应用程序及程序库。

    JavaScript面向对象编程指南.pdf

    JavaScript作为一门浏览器语言的核心思想;面向对象编程的基础知识及其在... 《JavaScript面向对象编程指南》着重介绍JavaScript在面向对象方面的特性,展示如何构建强健的、可维护的、功能强大的应用程序及程序库

    JavaScript面向对象编程指南(第2版).rar

    JavaScript是一种广泛...通过深入学习这本《JavaScript面向对象编程指南(第2版)》,开发者不仅能掌握JavaScript的面向对象编程基础,还能了解到实际项目中如何有效地运用这些知识,提升编程技巧和解决问题的能力。

    js 面向对象实例

    综合以上知识,`js 面向对象实例`涵盖了JavaScript中的面向对象编程基础,以及如何将这些概念应用到HTML5 Canvas的实践中。通过学习和实践这个实例,你不仅可以理解JavaScript的OOP机制,还能掌握如何利用Canvas API...

    javascript面向对象编程指南 2nd

    javascript面向对象编程指南 2nd英文版,英文名:Object-Oriented JavaScript。 What you will learn from this book The basics of object-oriented programming, and how to apply it in the JavaScript ...

    JavaScript面向对象编程.pdf

    JavaScript面向对象编程.pdf

    JavaScript面向对象编程指南 pdf

    下面将详细探讨JavaScript面向对象编程的基本原理、特性以及实际应用。 1. **类与对象** - 在JavaScript中,对象是键值对的集合,可以通过字面量语法或构造函数创建。例如: ```javascript const person = { ...

    JavaScript面向对象编程指南完整版

    JavaScript面向对象编程指南是完整的扫描版...

    JS面向对象编程

    javascript面向对象编程培训教程PPT

    javascript面向对象编程

    面向对象编程的基础知识及其在JavaScript中的运用;数据类型、操作符以及流程控制语句;函数、闭包、对象和原型等概念,以代码重用为目的的继承模式;BOM、DOM、浏览器事件、AJAX和JSON;如何实现JavaScript中缺失的...

    JavaScript面向对象编程

    JavaScript面向对象编程是一种基于原型(Prototype)的编程范式,它是动态类型语言,允许开发者创建具有复杂特性的对象。在JavaScript中,面向对象主要通过构造函数、原型链和闭包来实现。以下是对这一主题的详细...

Global site tag (gtag.js) - Google Analytics