Object类

1.Object类概念
Object类是所有javascript类的基类,提供了一种创建自定义对象的简单方式,不需要程序员再定义构造函数。
主要属性:
constructor-对象的构造函数;
prototype-获得类的prototype对象,static性质;

var i=new Number(10);
//我们可以给类添加方法
Number.prototype.add=function(a){
return this+a;
}
window.alert(i.add(10).add(30));//输出50
var b=90;
window.alert(b.add(40)); //输出130

主要方法:
hasOwnProperty(property)-是否属于本类定义的属性;
isPrototypeOf(object)-是否是指定类的prototype;
propertyIsEnumerable(property)-是否可列举的属性;
toString()-返回对象对应的字符串;
valueOf()-返回对象对应的原始类型值;

2.如何给类添加方法(如何给某类型的所有对象添加方法)
思考:给js的Array对象扩展一个find(val)方法?

var  arr1=new Array(3);
arr1[0]="George"
arr1[1]="John"
arr1[2]="Thomas"
//遍历该数组
for(var i=0;i<arr1.length;i++){
document.writeln(arr1[i]+"&nbsp;");
}
//使用Array提供的方法,颠倒数据
arr1.reverse();
document.write("<br/>");
//遍历该数组
for(var i=0;i<arr1.length;i++){
document.writeln(arr1[i]+"&nbsp;");
}
//现在试给Array添加一个方法find(val)
Array.prototype.find=function(val){
//遍历数组this
for(var i=0;i<this.length;i++){
if(val==this[i]){
return i;
}
}
return -1;
}
document.writeln("John下标="+arr1.find("John"));

3.成员函数的细节
(1)成员函数的参数可以是多个

function 函数名(参数列表){
代码语句
}

(2)成员函数可以有返回值,也可以没有,但是有的话最多只有一个。

(3)js中不支持函数的重载

function test(a){
window.alert(a);
}
function test(a,b){
window.alert(a+" "+b);
}
test(23); //只调用最后一个函数,前面都覆盖掉了
window.test(3,'hello');

结论1:js在调用函数的时候,是根据函数名来调用。如果有多个函数名相同,则认最后那个函数。
结论2:直接定义一个函数或者变量实际上这些函数和变量就是全局函数和全局变量(本质上他们是属于window对象的)。

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值