JS 学习笔记

来源:互联网 发布:如何卸载mac上的app 编辑:程序博客网 时间:2024/06/07 14:12

一,基础


1,插入JS

<script>标签要成对出现,并把JavaScript代码写在<script></script>之间。

<script type="text/javascript">表示在<script></script>之间的是文本类型(text), javascript是为了告诉浏览器里面的文本是属于JavaScript语言。

2,引用JS

JS文件不能直接运行,需嵌入到HTML文件中执行,我们需在HTML中添加如下代码,就可将JS文件嵌入HTML文件中。

<script src="script.js"></script>

3,JS在页面中的位置

我们可以将JavaScript代码放在html文件中任何位置,但是我们一般放在网页的head或者body部分。
放在<head>部分
最常用的方式是在页面中head部分放置<script>元素,浏览器解析head部分就会执行这个代码,然后才解析页面的其余部分。
放在<body>部分
JavaScript代码在网页读取到该语句的时候就会执行。

注意: javascript作为一种脚本语言可以放在html页面中任何位置,但是浏览器解释html时是按先后顺序的,所以前面的script就先被执行。比如进行页面显示初始化的js必须放在head里面,因为初始化都要求提前进行(如给页面body设置css等);而如果是通过事件调用执行的function那么对位置没什么要求的。

二,进阶


1,事件

JavaScript 创建动态页面。事件是可以被 JavaScript 侦测到的行为。 网页中的每个元素都可以产生某些可以触发 JavaScript 函数或程序的事件。

比如说,当用户单击按钮或者提交表单数据时,就发生一个鼠标单击(onclick)事件,需要浏览器做出处理,返回给用户一个结果。

主要事件表:


2,JS内置对象

1),Date日期对象

日期对象可以储存任意一个日期,并且可以精确到毫秒数(1/1000 秒)。

定义一个时间对象 :

var Udate=new Date(); 

注意:使用关键字new,Date()的首字母必须大写。 

使 Udate 成为日期对象,并且已有初始值:当前时间(当前电脑系统时间)

如果要自定义初始值,可以用以下方法:

var d = new Date(2012, 10, 1);  //2012年10月1日var d = new Date('Oct 1, 2012'); //2012年10月1日

我们最好使用下面介绍的“方法”来严格定义时间。

访问方法语法:“<日期对象>.<方法>”

Date对象中处理时间和日期的常用方法:

注意:返回星期的方法:

getDay() 返回星期,返回的是0-6的数字,0 表示星期天。如果要返回相对应“星期”,通过数组完成,代码如下:

<script type="text/javascript">  var mydate=new Date();//定义日期对象  var weekday=["星期日","星期一","星期二","星期三","星期四","星期五","星期六"];//定义数组对象,给每个数组项赋值  var mynum=mydate.getDay();//返回值存储在变量mynum中  document.write(mydate.getDay());//输出getDay()获取  document.write("今天是:"+ weekday[mynum]);//输出星期几</script>


2),string字符串对象

定义mystr字符串后,我们就可以访问它的属性和方法。

访问字符串对象的属性length:


1,stringObject.length; 返回该字符串的长度。


访问字符串对象的方法:


2,toUpperCase() 方法将字符串小写字母转换为大写。


3,charAt() 方法可返回指定位置的字符。返回的字符是长度为 1 。

stringObject.charAt(index)

注意:

字符串中第一个字符的下标是 0。最后一个字符的下标为字符串长度减一(string.length-1)。

如果参数 index 不在 0 与 string.length-1。

一个空格也算一个字符。


4,indexOf() 方法可返回某个指定的字符串值在字符串中首次出现的位置。

stringObject.indexOf(substring, startpos)

说明:

该方法将从头到尾地检索字符串 stringObject,看它是否含有子串 substring。

可选参数,从stringObject的startpos位置开始查找substring,如果没有此参数将从stringObject的开始位置查找。

如果找到一个 substring,则返回 substring 的第一次出现的位置。stringObject 中的字符位置是从 0 开始的

注意:

indexOf() 方法区分大小写。

如果要检索的字符串值没有出现,则该方法返回 -1。


5,split() 方法将字符串分割为字符串数组,并返回此数组。

stringObject.split(separator,limit)

注意:如果把空字符串 ("") 用作 separator,那么 stringObject 中的每个字符之间都会被分割。


6,substring() 方法用于提取字符串中介于两个指定下标之间的字符。

注意:

返回的内容是从 start开始(包含start位置的字符)到 stop-1 处的所有字符,其长度为 stop 减start。

如果参数 start 与 stop 相等,那么该方法返回的就是一个空串(即长度为 0 的字符串)。

如果 start 比 stop 大,那么该方法在提取子串之前会先交换这两个参数。


7,substr() 方法从字符串中提取从 startPos位置开始的指定数目的字符串。

stringObject.substr(startPos,length)

注意:如果参数startPos是负数,从字符串的尾部开始算起的位置。也就是说,-1 指字符串中最后一个字符,-2 指倒数第二个字符,以此类推。


4),Math对象

Math 对象属性

Math 对象方法


5)Array数组对象

数组属性:

length 用法:<数组对象>.length;返回:数组的长度,即数组里有多少个元素。它等于数组里最后一个元素的下标加一。

数组方法:


3,浏览器对象


1),window对象


window对象是BOM的核心,window对象指当前的浏览器窗口。

window对象方法:

语法:

window.open([URL], [窗口名称], [参数字符串])


JavaScript计时器

计时器类型:


一次性计时器:仅在指定的延迟时间之后触发一次。


间隔性触发计时器:每隔一定的时间间隔就触发一次。


计时器方法:


setInterval(代码,交互时间)

clearInterval(id_of_setInterval) (id_of_setInterval:由setInterval()返回的ID值)

setTimeout(代码,延迟时间)

clearTimeout(id_of_setTimeout)   (id_of_setTimeout:由 setTimeout() 返回的 ID 值。该值标识要取消的延迟执行代码块。)


2),history对象


history对象记录了用户曾经浏览过的页面(URL),并可以实现浏览器前进与后退相似导航的功能。


注意:从窗口被打开的那一刻开始记录,每个浏览器窗口、每个标签页乃至每个框架,都有自己的history对象与特定的window对象关联。


语法:window.history.[属性|方法] (window可以省略)


History 对象属性


History 对象方法



3),Location对象


location用于获取或设置窗口的URL,并且可以用于解析URL。


语法:location.[属性|方法]


location对象属性图示:


location对象属性:



location对象方法:



4)Navigation对象


navigation对象包含有关浏览器的信息,通常用于检测浏览器与操作系统的版本


对象属性:



查看浏览器的名称和版本代码:

<script type="text/javascript">   var browser=navigator.appName;   var b_version=navigator.appVersion;   document.write("Browser name"+browser);   document.write("<br>");   document.write("Browser version"+b_version);</script>

5)screen对象


screen对象用于获取用户的屏幕信息。


语法: window.screen.属性


对象属性:



4.DOM tree


 

0 0