Javascript简介

    这里首先解析一下脚本语言,在脚本语言诞生之前,浏览器的所有运算都是在服务器端执行的,客户端只是解释并显示服务器端执行的结果。这就有个问题,第一服务器端的负荷比较重,第二就是延迟问题,客户端不够流畅,因为需要等待服务器端的运算结果。这才诞生了脚本语言,脚本语言可以将大部分运算放在本地执行,从而使浏览器更加流畅。脚本语言都是文本形式的,只在被调用的时候进行解释或编译。目前常用的脚本语言有Python,Javascript,ASP,PHP,PERL,VBScript,NUVA等,他们都需要有相应的解释器才能运行。
    Javascript语言的前身叫做LiveScript。自从Sun公司推出著名的java语言之后,Netscape公司引进了Sun公司有关Java的程序设计概念,将自己原有的Livescript重新进行了设计,并更名为Javascript.之所以取名为javaScript,原因就在于javascript作为一种潜入HTML文档的、基于对象的脚本设计语言。其中有很大一部分的语法同Java语言很相似,而且Javacript的设计可以使它很容易地同Java语言一同工作,它可以充分支持Java的applet小应用程序,java的applet小应用程序也可以很方便地访问已有的javacript代码。所以,也可以将javacript看成是java语言的某种简化版本。这里提一下,有关Jscript,Jscript是微软版的Javascript,只有IE浏览器可以识别(其实现在基本常见的浏览器两种脚本都可以识别),他们之间只有微小的差别,这里就不细究了。
    我所理解的Javascript:
    1.Javascript的基本数据类型以及变量的定义
Javascript所有类型的变量定义都是通过关键字var来定义的,通过定义你不能区分变量的类型,当你给它赋值整数时,它就是一个整数型的变量;当你给它赋值为一个字符串时,它就是一个字符串类型的变量。其实我也试过,你即使不用var定义也可以直接使用,例如用x = 100,那么它会自动定义一个整型的变量x。这一点我感觉和matlab很像,matlab也是这样,不用特意去定义某一个类型的变量,想用的时候直接赋值就可以使用。Javascript支持的基本数据类型有:数值(整数、浮点数)、逻辑值(true,false)、字符串、空值、未定义值。
    2. 对象
    Javascript有一些基本的对象,我们可以利用,当然我们也可以自己定义。例如,我们可以引用google提供的googlemap对象在网页中显示地图。这里给出默认的对象。
    (1)日期对象 Date
      var mydate = new Date();//当前日起
      var mydate = new Date("October 1,2008 12:00:00")//英文-数值格式:月 日,公元年 [时:分:秒]
                                                      //时分秒可选,不指定的话,自动设为0
      var mydate = new Date(2008,10,1);//数值格式:公元年,月,日,[时,分,秒]
      //这里有一点特别需要注意,年份是从0开始的,但是日期是从1开始的,所以,如果你想定义10月1号的话,应该是newDate(2008,9,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格式表示日期对象。
    (2)数组对象 Array
      var myArray = new Array[4];
      Array[0] = ;
      属性和方法:myArray.length;myArray.toString(),以字符串形式返回所有数组元素,中间以逗号分隔;myArray.reverse(),反转;myArray.ValueOf(),返回所有数组元素;myArray.join("."),返回所有数组元素,中间以"."分隔。
      (3) 字符串对象
      var str = "This is a string object"
document.write(str.bold().strike());
      属性和方法:length,长度属性;bold(),粗体;italtics();strike();fontsize(10),字体大小;fontcolor(#rrggbb),字体颜色;sup(),上标;sub(),下标;toUpperCase(),大写;toLowerCase(),小写;charAt(索引),返回索引位置字符;charCodeAt(索引),返回索引位置的ASCII字符码,十进制表示;indexOf(“字符串”[,索引]);lastIndexOf("字串"[,索引]);search("字串");slice(索引i[,索引j]);split(["字串"][,限制]);substr(start[,length]);link("url"),注意,如果链接一个网址必须在前面加http://,否则它会自动将文件的路径加载网址前面;match(/匹配字符/);toString();valueOf()
      (4)布尔对象
        var bl = new Boolean();//false
        var bl = new Boolean(true);
        方法:toString();valueOf();
      (5) 数学对象,Math
        这是一个静态对象,包含一些常量和一些数学方法。
        常量:Math.E,自然对象的底数;Math.LN2,2的自然对象;LN10;LOG2E;LOG10E;PI;SQRT1_2,根号0.5,SQRT2,根号2。
        方法:ceil(10.1);floor(2.9);min(1,2);max(2,3);pow(2,3);random();round(10.3);sqrt(4);abs,sin,cos,tan,asin,acos,atan,exp,log。
      (6) 自定义对象
      var oj = new myObject("zhangsan","male");
      ob.display();
      function myObject(Name,Sex)
{
    this.Name = Name;
            this.Sex = Sex;
    this.display = display;
}

      function display()
      {
document.write("my name is:"+this.Name+":my sex is:"+this.Sex);
        }

    3. 默认函数
    (1)eval,eval_r("1+2")
      (2) isNaN,是否为数值
      (3) parseInt("100"); parseInt("100",2),返回二进制;parseInt("100",10); parseInt("100",16);
      (4) parseFloat("199.123A22");
    4.事件
    Abort,Blur,Change,DragDrop,Error,Focus,Move,Reset,Submit,Click,DblClick,KeyDown,KeyPress,KeyUp,Load,Unload,MouseDown,MouseOver,MouseOut,MouseMove;
      用法:在属性中用on事件=""来指定特定事件。
      鼠标经过
    5. 屏幕对象   screen
    属性:availHeight,availWidth,colorDepth,height,width
    6. 历史对象 history
    7. 位置对象 location,用来代表特定窗口的URL信息
    8. 文档对象,document,代表当前HTML对象,是由标签组构成的,对每个HTML文件会自动创建一个文档对象
    属性:linkColor,设置超链接颜色;alinkColor,作用中的超链接颜色;vlinkColor,链接的超链接颜色;links,以数组索引值表示的所有超链接;URL,该文件的网址;anchors,以数组索引值表示所有锚点;bgColor,背景颜色;fgColor,前景颜色;classes,文件中的class属性;cookie,设置cookie;domain,指定服务器的域名;formName,以表单名称表示所有表单;images,以属主索引值表示所有图像;layers;embeds;applets,pugins;fererred,tags,title,width,lastModified。
    方法:captureEvents(时间);close(),关闭输出字符流,强制显示数据内容;getSelection(),取得当前选取的字串;handleEvent(事件),使事件处理器生效;open([mimeType,[replace]]),打开字符流;releaseEvents(事件类型),释放已获取的事件;routeEvent(事件),传送已捕捉的事件;write(字串),写字串或数值到文件中;writeln(字串),分行写字串或数值到文件中(
..
)。
    对应的时间处理程序:
  • onClick onDbClick onKeyDown onKeyPress onKeyUp onMouseDown onMouseOver,可以为这些时间指定方法。 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值