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

本文介绍了JavaScript中数组和对象的使用方法,并演示了如何给这些内置类型添加自定义方法,如Array对象的find方法及Number对象的add方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

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

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对象的。





评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值