对象

来源:互联网 发布:淘宝内部优惠券app 编辑:程序博客网 时间:2024/03/29 01:25

对象是对某一类事物的描述,是抽象上的概念;而对象实例是一类事物中的具体个例。
对象中所包含的变量就是对象的属性,对象中所包含的对属性进行操作的函数就是对象的方法,对象的属性和方法都叫对象的成员。
能够被用来创建对象实例的函数就叫对象的构造函数,只要定义了一个对象的构造函数,就等于定义了一个对象。
例子
<script language="javascript">
  function Person()//构造函数
  {
  }
  //对象实例
  var person1=new Person();
  person1.age=18;
  person1.name="heizi";//可以为对象实例无限制地添加新的成语
  function sayFunc()//属性
  {
    //alert(person1.name+":"+person1.age);
    /*var x="name";
    alert(person1["x"]+":"+person1.age);*/
    alert(person1["name"]+":"+person1.age);
  }
  /*person1.say=sayFunc();*/
  person1.say=sayFunc;//方法,注意此处,不是把sayFunc()赋给它,而是把名称赋给它
  person1.say();
</script>
eval()方法是把里面的字符串作为表达式执行。
例如:eval("alert(person1.name);");
等同于
var x="age";
eval("alert(person1."+x+")")/

为一个对象实例新增加的属性和方法,不会增加到同一个对象所产生的其他对象实例上去。
例子
<script language="javascript">
 function Person(name,age)
 {
   this.age=age;
   this.name=name;
   this.say=sayFunc;
 }
 function sayFunc()
 {
   alert(this.name+":"+this.age);
 }
 function change(p1)
 {
   p1.name="李四";
 }
 var person1=new Person("张三",18);
 change(person1);
 person1.say();
</script>
.........................................................
内部对象
1.动态对象
对象实例名.成员

Object对象
String对象:
length属性,
anchor,big,bold,fontcolor,link等方法,
charAt方法(一个字符串中第一个字符的索引位置为0,依次类推)
charCodeAt方法(返回的结果是字符的unicode编码)
indexOf方法(返回索引的位置)
lastIndexOf方法(从后往前找索引的位置)
match、search方法
replace、split、slice方法
substr、substring方法。substring返回结果不包括结束位置的字符
toLowerCase/toUpperCase方法

xxx.length;length作为xxx的属性
xxx.length();length作为xxx的成员方法

2.静态对象
对象名.成员
Math对象:
abs方法,返回数字的绝对值
sin、cos方法,分别返回数字的正弦、余弦值
asin、acos方法,分别返回数字的反正弦、反余弦值
random方法,返回介于0和1之间的伪随机数
Date对象:
getYear/getMonth/getDate/getDay方法
getHours/getMinutes/getSeconds/getMilliseconds方法
toString方法
.....................................................................
对象专用语句
with语句
with(对象名称)
{
 执行语句块
}
例子
<script language="javascript">
 var current_time=new Date();
 with(current_time)
 {
   var strDate=getYear()+"年";
   strDate+=getMonth()+"月";
   strDate+=getDate()+"日";
   strDate+=getHours()+":";
   strDate+=getMinutes()+":";
   strDate+=getSeconds();
   alert(strDate);
 }
</script>
for...in语句
for(变量in对象)
{
  执行语句
}
例子
<script language="javascript">
  function Person()
 {
  this.name="heizi";
  this.age=22;
  this.height=159;
 }
 var p1=new Person();
 var prop,str="";
 for(prop in p1)
 {
  str+=p1.prop+" ";
 }
 alert(str);
</script>
.........................................................................