现在的位置: 首页 > 综合 > 正文

韩顺平网页设计第三十三讲

2014年07月26日 ⁄ 综合 ⁄ 共 1177字 ⁄ 字号 评论关闭

数组是一种引用类型,也就是说是通过地址方式引用的。数组里面的值是可以混合使用的,可以是各种类型的。

object类是所有js类的基类。它的属性有constructor和prototype等。

var p1 = new Object();
    p1.name = "sp";
    document.writeln(p1.constructor);
    
    
    var i = new Number(10); //等价于 var i=10;
    Number.prototype.add = function(a){  //给类添加方法。
    document.writeln("this+a"+(this+a));
    return this+a;
    }
    var j = new Number(10);
    document.writeln(j.add(10).add(30));

运行结果如下:

function Object() { [native code] } this+a20 this+a50 50

如何给类添加方法:

 /*
    下面给js的Array对象拓展一个find(val)方法,当一个Array对象调用该方法的时候,
    如果能找到val则返回其下标,否则返回-1。
    */
    var arr1 = new Array(3);
    arr1[0]="renlei";
    arr1[1]="ziyuanbu";
    arr1[2]="caonima";
    
    //给所有Array对象添加一个方法find(val)
    Array.prototype.find=function(val)
    {
    		//开始遍历数组
    		for(var i =0;i<this.length;i++)
    		{
    			if(val==this[i])
    				return i;
    		}
    		return -1;
    }
    
    document.write(arr1.find("ziyuanbu")+"<br/>");
    //遍历
    for(var i=0;i<arr1.length;i++)
    {
    	document.writeln(arr1[i]+" ");
    }
    //颠倒
    document.write("<br/>");
    arr1.reverse();
    for(var i=0;i<arr1.length;i++)
    {
    	document.writeln(arr1[i]+" ");
    }

运行结果如下:
1
renlei ziyuanbu caonima
caonima ziyuanbu renlei  

成员函数细节:

函数的参数列表可以有多个。 

成员函数可以没有返回值,如果有返回值,则最多可以返回一个。

js支持参数可变:

js不支持重载,直接调用最后一个。js调用函数的时候,是根据函数名来调用的,如果有多个函数名

相同,则认可最后一个。

test(23)的结果是23undefine

test(3,'hello')的结果是3 hello。他们都是调用后面一个函数来实现的。

如果一个函数没有写在一个类里面,则我们认为这个函数是全局函数。本身是属于window对象的。

抱歉!评论已关闭.