JavaScript学习笔记(二)

6 .JS 的面向对象基础

在JS中实际是没有类的语法的,实现类的功能是通过一个函数闭包(closure)模拟出来的,Js中的String、Data等“类”实际不是类,是对象:
<script language="javascript">
 function Person(name,age){
		 this.Name = name;
		 this.Age = age;
		 this.SayHello = function(){alert("你好!,我是"+this.Name+"我现在"+this.Age+"岁啦")}; //一个匿名函数
		
		}
		var 小明 = new Person("小明",20);  //Person()函数可以看做是一个构造函数
		
		小明.gender ="男";  //动态的增添方法属性,动态绑定,实际上是把方法
		小明.SayHello();	//并且JS的变量也可以使用中文,就是任意的类型除了内置的函数名多可以做变量名
		小明.gender = function(){alert(小明.gender)};
		//写到这里才恍然大悟,其实写JS就是在JS的标签里写,然后具体的实现的代码规范和C#几乎是完全一样的哈
</script>
	
7.JS的数组(实际就是他妈的一个容器啊)

<script language="javascript">
	  var arr = new Array();
	  arr[0] = "0";
	  arr[1] = "1";
	  arr[2] = "2";
	  arr[3] = "3";

	 for(var i = 0; i < arr.length; i++)
	 {
	   alert(arr[i]);
	 }
	 
	   for(var i = 0; i < arr.length; i++)
         {
   //arr.join("|");
   alert(arr.join("|"));  //这里使用join()函数实现的对数组中间的插入,要注意的是join()函数的操作对象是数组名,不是单个元素,如果是单个元素中间是不能被破坏的,并且join的j是小写,这里使用数组名输出,就类似于知道字符串的首地址,直接就会把所有的字符元素全部输出啦
   }

function myarr(arr)
{
arr.join("*");
   for (var j = 0; j < arr.length; j++)
{	//arr[j+5]=22;  //
	arr[j]=arr[j]+1;  //这里实现的是arr[j]的数组元素拼接上一个字符串类型,不是简单的算术相加
	
   alert(arr);
}
}

myarr(arr);


 for(var j = 0; j < arr.length; j++)
 {
   //arr.join("|");
   alert(arr);  //这里会打印改变后的数组,也就是说新的数组是经过函数处理的,并不是传的一份拷贝
 }


//Dictionary:

var dict = new Array();
dict["人"] = "ren";  //这是在利用Array()的对象实现字典
dict["口"] = "kou";
dict["朱"] = "zhu";

for(var i in dict)
{
 // alert(i); //这里会打印Key
}

/*
 alert(dict["人"]); //这里就是打印的value,即字典的值,说明数组的用法只不过是Dictionary的一种特例
 alert(dict["口"]);
 alert(dict["朱"]);

var arr1 = {12,34,56}; //这是一种简单的数组的简化声明方式
var arr2 = {"tom":30,"zhu":20,"li":10}; //这是一种简单的字典的声明的方式

alert(arr2["tom"]);  //这里通过索引器用给出的key去查value
alert(arr2.zhu);    //这里是以一种点成员的方式去寻找对应的value,记住字典的使用方法只能是通过key去找value,不能取反

//获得对象所有的成员,因为对象的成员就是以对象的key的形式呈现的,这样没有文档都能知道他的使用属性
//这里的document对象是页面文档,就是包含页面的所属性的一个对象
*/
for(var e in document){

//alert(e);  //这里会打印所有的对象的成员,这里是对象的可操作的属性
}

var p2 = new Object(); //可以给一个对象动态增加属性和方法
p2.Name = "aaa";
p2.Age = 20;
p2.SayHello = function(){alert("我是"+p2.Name)};

for(var s in p2)
{
 alert(s); //该对象的key也是对象的成员
}


</script>

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值