JavaScript概述

前言:

  学习前基础:Java基础、Html、Css;

 

文章目录

  一、概览

  二、JavaScript基础

  三、JavaScript内置对象

 

 

一、概览

  1、JavaScript是什么

    JavaScript是一种基于对象和事件驱动的脚本语言,在客户端执行。虽然它是作为开发web页面的脚本语言而出名的,但是在很多非浏览器环境中也使用JavaScript,例如 node.js、 Apache CouchDB 和 Adobe Acrobat

  2、JavaScript定位

    Css+Html用于生成具有固定结构样式的静态网页。JavaScript用于将其变为可执行简单程序的动态网页,并且可以与服务器交互生成由服务器计算数据所控制的动态网页。也即前端页面与后台服务器之间的桥梁。

  2、JavaScript与java的关系

    JavaScript从名字上看与Java非常相似。但这是两种截然不同的编程语言。主要区别如下:

      代码格式不一样:Java将代码保存在独立的文件中,而JavaScript必须包含在HTML页面中才能运行。

      基本原理不一样:Java是一种面向对象编程语言,而JavaScript是一个客户端脚本语言。

      执行过程不一样:Java在指向之前必须经过编译,才能在对应平台上运行。二JavaScript则不需要编译,只需将源代码发送到客户端,有浏览器解释执行。

二、JavaScript基础

  1、JavaScript语言位置

<html>
    <head></head>
    <script>
    document.write("你好,欢迎来到JavaScript世界")
    </script>
    <body>
    </body>
</html>

  JavaScript语句使用<script></script>语句包裹(之前需使用<script type=“text/javascript”>,现在默认<script>即为JavaScripe),可放置在Html语言任意部位。浏览器按上下顺序执行JavaScript脚本

  2、语法结构

    2.1、数据类型

    数值型:能存储整数和小叔类型

    字符串型:用双引号或单引号包含的一个或多个字符,如果是双引号和单引号一起使用,则单引号包含在双引号内使用

    布尔型:仅有两个 值true、false

    2.2、变量

    JavaScript数据类型为弱数据类型,所有数据类型均使用关键字“var”来定义

    var <变量名> [ = <值>];

    var是variable的缩写,又可以叫做可变类型。JavaScript变量命名的规则与Java相似,只能包含数字、字母、下划线,要以字母开头,不可以使用JavaScript关键字。

    2.3、运算符与表达式

    "===" 表示恒等于,比较运算符。等式左右两边表达式值相等并且数据类型相等时返回true,否则返回false;

    “!==”表示不恒等于,比较运算符。等式左右两边表达式值不相等或数据类型不相等时返回true,否则返回false;

    其余均与Java运算符相同

  3、流程控制及循环语句

    3.1、流程控制语句

      if语句、switch语句,语法同java

    3.2、循环语句

      for循环、while循环,语法同java

  4、函数

    4.1、常用系统函数

      alert:弹出具有一个确定按钮的对话框

      isNaN:是否为非数值类型

    4.2、自定义函数

<html>
<head>
	<meta charset="utf-8" />
	<title>JavaScript Function</title>
</head>
<script>
	function wirteTime(){
		var time = getTime();
		document.getElementsByName("timeInput")[0].value = time;
	}
	
	function getTime(){
		var time = new Date().toLocaleString();
		return time;
	}
</script>
<body>
	<font>点击获取当前时间</font>
	<button onclick="wirteTime()">click</button>
	<input name = "timeInput" type="text" value="" />
</body>
</html>

    自定义函数涉及函数关键字“function”,函数名,函数参数,函数体,函数返回值,函数调用这些关键点。

  5、对象

<html>
<head>
	<meta charset="utf-8" />
	<title>JavaScript Function</title>
</head>
<script>
	var stu =  {
		name : "Tom",
		age : 18,
		address : null,
		study : function(){
			alert("good good study ,day day up");
		}
	};
	
	/**
	 * 对象赋值的两种方式
	 */
	stu["address"] = "china";
	stu.age = 20;
</script>
<body>
	<p>stuName:<input type="text" name="name" value="" /></p>
	<P>stuAge:<input type="text" name="age" value=""></P>
	<p>stuadress:<input tyepe="text" name="address" value=""></p>
	<p>study:<input type="button" onclick="stu.study()" value="click">
	<!--
    	若将下面代码放置<body>前面则报错,因为浏览器按顺序执行Html中的JavaScript语句,
    	直接位于<script></script>标签下的语句直接加载执行,此时尚未加载<body>内容,
    	则getElementsByName()方法返回值为空。
    	放在此处则三个<p></p>标签内容已经加载完毕,
    	浏览器加载时getElementsByName()方法时可获取值。
    	关键点在于弄清楚执行顺序,因为JavaScript为非编译,直接执行语言。
    -->
	<script>
		/***
		 * 对象获取值得两种方式
		 */
		document.getElementsByName("name")[0].value = stu.name;
		document.getElementsByName("age")[0].value = stu["age"];
		document.getElementsByName("address")[0].value = stu.address;
	</script>
</body>
</html>

三、JavaScript内置对象Ⅰ 

  JavaScript共内置17个对向,以下是一些常用对象:

  3.1、Array

    Array对象提供一个数组的模型、存储大量有序的数据。

    三种定义方式:

      var 数组名 = [元素1,元素2,元素3,....];

      var 数组名 = new Array(数组长度);

      var 数组名 = new Array(元素1,元素2,元素3,......);

    属性:

      length:数组的长度

    方法:

      Concat():表示把几个数组合并成一个数组。 
      Join():返回字符串值,其中包含了连接到一起的数组的所有元素,元素由指定的分隔符分隔开来。 
      Pop():移除数组最后一个元素。 
      Shift():移除数组中第一个元素。 
      Slice(start,end):返回数组中的一段。 
      Push():往数组中新添加一个元素,返回最新长度。 
      Sort():对数组进行排序。 
      Reverse():反转数组的排序。 
      toLocaleString():返回字符串值,其中包含了连接到一起的数组的所有元素,元素由“,”分隔开来。

  3.2、Date

    Date对象用于处理日期和时间以及其转化

    两种定义方式

      var 对象名 = new Date();

      //以字符串形式创建Date对象,格式为:MM,DD,YYYY,hh:mm:ss

      var 对象名 = new Date("Aug,18,2009,08:51:05");

    常用方法(以 2009-8-18 08:51:05 (周二) 为例):

      获取日期方法:

      getDate():获得当前日期,显示18。

      getDay():获得当前周几,显示“2”,如果是周日,则显示“0”。

      getHours():获得当前的小时,显示为“8”。

      getMinutes():获得当前的分钟,显示"51"。

      getMonth():获得当前月份,显示"7",月份为 0 - 11。

      getSeconds():获得当前的秒,显示为"05"。

      getTime():获得当前时间,以毫秒为单位,显示"1250556665671"。相对于1970年1月1日 00:00:00到当前时间的毫秒数。在此之前的时间会以负数的形式存在。

      getYear():获得当前年份,显示"2009"。

      设置日期方法:

      setDtate():设置日期,范围0-30,

      setHours():设置小时,范围0-23,

      setMinutes():设置分钟,范围0-59,

      setMonth():设置月份,范围0-11,

      setTime():设置时间,例如 setTime(1250556665671)

      setYear():设置年份

      其他方法:

      toString() : Tue Aug 18 08:51:05 UTC+0800 2009

      toLocaleString():2009年8月18日 8:51:05

      toLocaleDateString():2009年8月18日

  3.3、String

    处理所有的字符串操作

    两种定义方式:

      var 对象名 = new String(字符串值);

      var 对象名 = 字符串值;

    属性:

      length:返回String对象的长度;

    方法:

      查找类方法:

      charAt():查找指定下标的字符。

      indexOf():查找匹配字符串第一次出现的位置。

      lastInexOf():从后向前搜索,匹配字符串第一次出现的位置。

      操作类方法:

      concat():将多个字符串连接成一个字符串。

      replace():将匹配字符串替换成新字符串。

      split():将字符串分割,返回字符串数组。

      substr():截取字符串。

      subString():截取字符串。

      slice():提取字符串片段返回。

      search():查找与正则表达式相匹配的值。

      转换类方法:

      toLowerCase:返回字符串的小写形式

      toUpperCase:返回字符串的大写形式

  3.4、Math

    Math对象用于执行数学任务;Math对象并不像Date和String那样是对象的类,因此没有构造函数Math()。

    语法:

      var x  = Math.PI;//返回PI

      var y = Math.sqrt(16);//返回16的平方根

    属性:

      E:返回算数常量e,即自然对数的底数(约等于2.718)。

      LN2:返回2的自然对数。

      LN10:返回10的自然对数。

      LOG2E:返回以2为低的e的对数。

      LOG10E:返回以10为低的e的对数

      PI:返回圆周率。

      SQRT1_2:返回2的平方根的倒数。

      SQRT2:返回2的平方根。

    方法:

      abs(x):返回x的绝对值。

      sin(x):返回x的正弦值。

      cos(x):返回x的余弦值。

      acos(x):返回x的反余弦值。

      asin(x):返回x的反正弦值。

      max(x,y,z...n):返回x,y,z,...,n中的最高值。

      main(x,y,z,...n):返回x,y,z..,n中的最低值。

      random():返回0~1之间的随机数。

  3.5Number

    JavaScript只有一种数字类型。可以使用也可以不是使用小数点来书写数字。

    所有JavaScript数字均为64位。

    前缀为0,JavaScript会吧数值常量解释为八进制数。前缀为0x,则解释为16进制。

    JavaScript用Infinity表示无穷大。用-Infinity表示无穷小。

    初始化:

      var x = 123;//数字可以私有数据进行初始化。

      var y = new Number(123);//数字对象化初始数据。

    属性:

      NaN:代表非数字值的特殊值。

      MAX_VALUE:JavaScript中可表示的最大的数;

      MIN_VALUE:JavaScript中可表示的最小的数;

    方法:

      isNaN():判断是否为非数值

      toFixed():四舍五入为指定小数位数的数字。

      toString():

四、JavaScript内置对象Ⅱ

  4.1、window

    JavaScript结构中的顶级对象,表示浏览器窗口或一个框架。在客户端JavaScrpt中,Window对象是全局对象,所有的表达式都在当前的环境中计算。也就是说,要引用当前窗口根本不需要特殊的语法,可以把那个窗口的属性作为全局变量来试用。例如,可以只写document,而不必写window.document。

    集合:

    frames[]:返回窗口中所有命名的框架。

    属性:

    closed:返回窗口是否已被关闭。

    defaultStatus:设置或返回窗口状态栏中的默认文字。

    document:对Document对象的只读引用。

    history:对History对象的只读引用。

    innerheight:返回抽口的文档显示区的高度。

    innerwidth:返回窗口的文档显示区的宽度。

    length:设置或返回窗口中的框架数量。

    location:用于窗口或框架的Location对象。

    name:设置或返回窗口的名称。

    Navigator:对Navigator对象的只读引用。

    openner:返回对创建此窗口的窗口的引用。

    outerheight:返回窗口的外部高度。

    outerwidth:返回窗口的外部宽度。

    pageXOffset:设置或返回当前页面相对于窗口显示区左上角的X位置。

    pageYOffset:设置或返回当前页面相对于窗口显示区左上角的Y位置。

    parent:返回父窗口。

    Screen:对Screen对象的制度引用。

    self:返回对当前窗口的引用。等价于Window属性

    status:设置窗口状态栏的文本。

    top:返回最顶层的先辈窗口。

    window:window属性等价于self属性,它包含了对窗口自身的引用。

    方法:

    alert():显示带有一段消息和一个确认按钮的警告框。

    blur():把键盘焦点从顶层窗口移开。

    clearInterval():取消由setInterval()设置的timeout。

    clearTimeout():取消由setTimeout()设置的timeout。

    close():关闭浏览器窗口。

    confirm():显示带有一段消息以及确认按钮和取消按钮的对话框。

    focus():把键盘焦点给予一个窗口。

    moveBy():可相对窗口的当前坐标把它移动指定的像素。

    moveTo():把窗口的左上角移动到一个指定的坐标。

    open():打开一个新的浏览器窗口或查找一个已命名的窗口。

    print():打印当前窗口内容。

    prompt():显示可提示用户输入的对话框。

    resizeBy():按照指定像素调整窗口的大小。

    resizeTo():把窗口偶的大小调整到指定的宽度和高度。

    scrollBy():按照指定的像素值来滚动内容

    

  4.2、document

    代表整个Html文档,可被用来访问页面中的所有元素

    属性:

    body:提供对<body>元素的直接访问。

    cookie:设置或返回与当前文档相关的所有cookie。

    domain:返回当前文档的域名。

    referrer:返回子啊如当前文档的URL。

    title:返回当前文档的标题。

    URL:返回当前文档的URL。

    方法:

    getElementById():返回对拥有指定id的第一个对象的引用。

    getElementsByName():返回带有指定名称的对象集合。

    getElementsByTagName():返回带有指定标签名的对象集合。

    getElementsByClass():返回带有指定clss属性的对象集合。

  4.3、History

    包含了浏览器窗口访问过的URL

    属性:

    length:返回浏览器历史列表中的URL数量。

    方法:

    back():加载history列表中的前一个URL。

    forward():加载history列表中的下一个URL。

    go():加载history列表中的某个具体页面。

  4.4、Location

    包含了当前URL的信息

    属性:

    host:设置或返回主机名和当前URL的端口号。

    hostname:设置或返回当前URL的主机名。

    href:设置或返回完整的URL。

    pathname:设置或返回当前URL的路径部分。

    port:设置或返回当前URL的端口号。

    protocol:设置或返回当前URL的协议。

    search:设置或返回从问号(?)开始的URL(查询部分)。

    方法:

    assign():加载新的文档。

    reload():从新加载当前文档。

    replace():用新的文档替换当前文档。

  4.5、Screen

    包含客户端显示屏的信息。

    方法自查

posted on 2018-02-14 22:40  songpan  阅读(223)  评论(0编辑  收藏  举报

导航