JS的方法

提笔忘字啊,今天突然要用到jS,发现有很多东西已经不是记得很牢,怪就怪在以前不好好整理所学内容,这里先整理一点点

基本方法的定义:

方式一:

<script language="javascript">
	function fun()      // 普通方法定义
	{
		alert("call fun");
	} 
	fun();
</script>

方式二:

<script language="javascript">
	var fun = function() // 定义方法为变量 
	{
		alert("call fun");
	} 
	fun();

	var temp = fun;      // 方法以变量的方式传递
	temp();

	alert(temp);         
</script>

方式三:

<script language="javascript">
	var fun = new Function("var temp = 100; this.temp = 200; alert('temp + this.temp = ' + (temp + this.temp));");     
        // 注意temp 与 this.temp 区别
	fun();
</script>


类方法:


一、公开方法和内部方法:

<script language="javascript">
	function Person(name,iage,sal){
		this.name=name;        // 仅有属性
		var age=iage;          // 私有属性
		var salary=sal;
		this.show=function(){  //公开方法(特权方法)
			window.alert(name + age+" "+salary);
		}
		function show2(){      //私有方法(内部方法) 类体内使用
			window.alert(name + age+" "+salary);
		}
		this.showshow=function(){
			show2();
		}
	}
	var person = new Person("张良", 30, 30000);
	person.show();
	//person.show2();  // ERROR
	person.showshow();
	
</script>

二、通过prototype 定义类公有方法:

<script language="javascript">
	function Dog(){
	
	}
	
	Dog.prototype.shout=function(){           // 通过prototype 定义类方法
		window.alert("小狗");
	}

	var dog1=new Dog();
	dog1.shout();

	var dog2=new Dog();
	dog2.shout();

	window.alert(dog1.shout==dog2.shout);  //共用函数,地址一样可看出
	
</script>

三、方法的覆写:

<script language="javascript">
	//学生类
	function Student(name,age){
		this.name=name;
		this.age=age;
		this.show=function(){
			window.alert(this.name+" "+this.age);
		}
	}
	
	function MidStu(name,age){
		this.stu=Student;
		this.stu(name,age);               //js实际上是通过对象冒充实现继承
		//MidStu可以覆盖Stu类的show
		this.show=function(){
			window.alert("MidStu show()");
		}
	}

	var midStu=new MidStu("宋江",40);
	midStu.show();
	
</script>



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值