JavaScript 对象

来源:互联网 发布:mac r语言加载library 编辑:程序博客网 时间:2024/04/30 05:29

 对象:

对象是一组具有属性和方法的经过组织的数据。

默认对象: 日期对象;(日期基线:1970年1月1日00:00:00)

建立日期对象(实例):

  格式:日期对象名称=new Date([日期参数])

  日期参数:1.省略;
       2.英文-数值格式:月 日,公元年 [时:分:秒]
         如:today=new Date("October 1,2008 12:00:00")
       3.数值格式:公元年,月,日,[时,分,秒]
         如:today=new Date(2008,10,1)

日期对象的方法:

  格式:日期对象名称.方法([参数])

获取当地时间:
getYear()返回年份数getFullYear()返回年份数getMonth()返回月份数(0--11)getDate()返回日期数(1--31)getDay()返回星期数(0--6)getHours()返回时数(0--23)getMinutes()返回分数(0--59)getSeconds()返回秒数(0--59)getMilliseconds()返回毫秒数(0--999)getTime()返回对应日期基线的毫秒Date.parse(日期字串)返回对应日期基线的毫秒setTime(时间值)指定一日期对象的值toGMTString()以GMT格式表示日期对象toUTCString()以GMT格式表示日期对象

数组对象;

建立数组对象:

   格式1:数组对象名称=new Array([元素个数])
   格式2:数组对象名称=new Array([[元素1][,元素2,...]])
   格式3:数组对象名称=[元素1[,元素2,...]]

   例:
     fruit=new Array(3);// fruit=new Array();
     fruit[0]="苹果";
     fruit[1]="梨子";
     fruit[2]="橘子";

     fruit=new Array("苹果","梨子","橘子");

     fruit=["苹果","梨子","橘子"];

数组对象的属性:

  格式:数组对象名称.属性

  属性:length  数组长度

  例:
<Script> var fruit = new Array("苹果", "梨子", "橘子");
var i;

for (i=0; i < fruit.length; i++) {
    document.write("fruit [", i, "] = ", fruit[i], "<br>")
}

</Script>

数组对象的方法:

  格式:数组对象名称.方法([参数])

  方法: join([分隔符])数组元素组合为字符串toString()以字符串表示数组reverse()数组反转valueOf()返回数组值
   例:
<Script> var fruit = new Array("苹果", "梨子", "橘子");

document.write("<LI>", fruit.join());
document.write("<LI>", fruit.join("、"));
document.write("<LI>", fruit.toString());
document.write("<LI>", fruit.reverse().join());
document.write("<LI>", fruit.valueOf());

</Script>

二维数组:

   例:
<Script> var fruit = new Array(3);
fruit[0] = new Array("苹果", 2);
fruit[1] = new Array("梨子", 4);
fruit[2] = new Array("橘子", 2);

for (i=0; i < fruit.length; i++) {
  for (j=0; j < fruit[0].length; j++) {
    document.write("fruit [", i, "][", j, "] = ", fruit[i][j],"<br>");
  }
  document.write("<br>");
}

</Script>
字符串对象;

建立字符串对象:

  格式:字符串对象名称=new String(字符串常量)
  格式:字符串变量名称="字符串常量"

字符串对象的属性:

  格式:字符串对象名称.属性

  属性:length   字符串长度

字符串对象的方法:

  格式:字符串对象名称.方法

  方法: bold()粗体italtics()斜体strike()删除线fontsize(字级大小)文字大小fontcolor(#rrggbb)文字颜色sup()上标sub()下标toUpperCase()大写toLowerCase()小写charAt(索引)返回索引位置的字符charCodeAt(索引)返回索引位置的ASCII字符码,十进制表示indexOf("字串"[,索引])返回字串在对象中的索引位置lastIndexOf("字串"[,索引])返回字串在对象中的索引位置(反向搜索)search("字串")返回字串在对象中的索引位置replace("字串1","字串2")字串2替换字串1slice(索引i[,索引j])返回索引i倒索引j-1的子串split(["字串"][,限制])将字串从对象中删除substr(start[,length])返回特定长度的字串substring(索引i[,索引j])返回索引i倒索引j-1的子串link("url")设置链接match(/匹配字符/)/d
匹配一个数字字符。
/D
匹配一个非数字字符。
/n
匹配一个换行符。
/r
匹配一个回车符。
/s
匹配一个空格符。
/S
匹配任意非空格符。
/t
匹配一个table符。
/W
匹配任何非单词符。
/num
匹配正整数num。
/n/
匹配八进制,十六进制,十进制的escape值。
toString()返回字符串valueOf()返回字符串值
  例1:
<Script>
var str = "JavaScript";

document.write(str.bold(),"<BR>");
document.write(str.fixed(),"<BR>");
document.write(str.fontcolor("red"),"<BR>");
document.write(str.fontsize(5),"<BR>");

</Script>

  例2:
<Script>

var str = "JavaScript";
var num = 1234;

document.write(str.toUpperCase(), "<BR>");
document.write(num.toString().charAt(2),"<BR>");
document.write(str.substring(0,4), "<BR>"); </Script>

  例3:
<Script>

var str = "JavaScript"; document.write(str, " 有 ", str.length, " 个字<BR>");
document.write(str.fontcolor("green"), " 不是 ");
document.write(str.substr(0,4).fontcolor("red"));
document.write(" 也不是 ", str.replace("Java", "VB"));
</Script>

  例4:
<Script>

var str = "hubert@abc.com.cn";
var idx = str.search("@");
var usr = str.substr(0,idx); document.write(usr.toUpperCase().fontsize(7), "<BR>");
document.write("你的电子信箱是", str);
</Script>

  例5:
<Script> function isEmail(){
  var str = document.form1.add.value;
  if (str.indexOf("@") == -1)
    alert("请填写正确的EMail地址");
  else
    alert("OK!");
}
</Script>
<FORM name="form1">
请输入你的 EMail 地址:
<INPUT TYPE="text" name="add">
<INPUT TYPE="button" value="开始检查" onClick="isEmail()">
</FORM>
布尔对象;

建立布尔对象:

   格式:布尔对象名称=new Boolean(转换值)
   转换值:null、未定义、0、或false均转换成false

布尔对象的方法:

  格式:布尔对象名称.方法
  方法:toString()
     valueOf()
  例:
<Script> x = new Boolean();
y = new Boolean(true);
z = new Boolean(0);

document.write(x, "<br>");
document.write(y, "<br>");
document.write(z, "<br>");

</Script>
数学对象;(静态对象)

数学对象的属性:

  格式:Math.属性
  属性: E自然对数的底数LN22的自然对数LN1010的自然对数LOG2E以2为底e的对数LOG10E以10为底e的对数PI圆周率SQRT1_21/2的平方根SQRT22的平方根

数学对象的方法:

  格式:Math.方法(参数)
  方法: ceil(数值)大于等于该数值的最小整数floor(数值)小于等于该数值的最大整数min(数值1,数值2)最小值max(数值1,数值2)最大值pow(数值1,数值2)数值1的数值2次方random()0倒1的随机数round(数值)最接近该数值的整数sqrt(数值)开平方根abs、sin(弧度)、cos、tan、asin、acos、atan、exp、log
  例1:
<Script> with (document) {
    write("<LI>2 的平方根值是 ", Math.sqrt(2));
    write("<LI>2 <sup>3</sup> = ", Math.pow(2,3));
    write("<LI>最接近 3.14 的整数是 ", Math.round(3.14));
}

</Script>

  例2:
<Script> var now = new Date();
var firstDay = new Date("Nov 10, 1999");
var duration = now - firstDay;
var msPerDay = 24 * 60 * 60 * 1000; //换算成毫秒
days = Math.round(duration/msPerDay);
document.write("本网站已经开幕" + days + "天了");

</Script>

例3:
<Script>

var promote = new Array(3);
promote[0] = "拍卖区又有新货到了,赶快来捡便宜啊......"
promote[1] = "成为会员,马上享受八折优惠,还可以参加抽奖!";
promote[2] = "庆祝访问人数突破十万人次,填问卷就送大奖,快来啊!";
index = Math.floor(Math.random() * promote.length);
document.write(promote[index]);

</Script>
数值对象; 函数对象;

自定义对象。

自定义对象; 构造函数定义对象类型; 建立对象实例。 例:
<Script> function member(name, sex) {
    this.name = name;
    this.sex = sex;
}

var papa = new member("杨宏文", "男生");
var mama = new member("黄雅玲", "女生");
var doggy = new member("奇 奇", "宠物狗");

document.write(papa.name);
document.write("是", papa.sex);
</Script>
动态的定义对象属性; 例:
为指定的对象实例定义属性:papa.hobby="看电视";
为对象定义属性:member.prototype.hobby=null;
        papa.hobby="上网";
        mama.hobby="逛街";
        doggy.hobby="啃骨头";

定义对象的方法; 构造函数定义对象方法名; 建立方法的描述函数。 例:
<Script> function member(name, sex) {
  this.name = name;
  this.sex = sex;
  this.display = display;
}

function display() {
  var str = this.name + "是" + this.sex;
  document.write("<LI>" + str);
}

var papa = new member("杨宏文", "男生");
var mama = new member("黄雅玲", "女生");
var doggy = new member("奇 奇", "宠物狗");
papa.display();
mama.display();
doggy.display();

</Script>
利用对象原型(prototype)为默认对象定义属性:

<Script> String.prototype.replaceAll = strReplace;
function strReplace(findText, replaceText) {
  var str = new String(this);
  while (str.indexOf(findText)!=-1) {
    str = str.replace(findText, replaceText);
  }
  return str;
}

myStr = "告诉你 - 如果你正在寻找一本能帮助你彻底研究" +
"JavaScript的书籍,请你一定要认明碁峰的" +
"JavaScript教学范本,让你事半功倍,功力大增。";
document.write("<LI>原稿是:<BLOCKQUOTE>" + myStr +"</BLOCKQUOTE>");
document.write("<LI>利用Replace()将「你」改成「您」:"
+"<BLOCKQUOTE>" + myStr.replace('你','您') +"</BLOCKQUOTE>");
document.write("<LI>利用自定义的字符串方法 - 全部取代"
+"<BLOCKQUOTE>" + myStr.replaceAll('你','您') +"</BLOCKQUOTE>");
</Script>

原创粉丝点击