(1)打开新窗口

语法:

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

参数说明:

  1. URL:可选参数,在窗口中要显示网页的网址或路径。如果省略这个参数,或者它的值是空
  2.  
  3. 字符串,那么窗口就不显示任何文档。
  4. 窗口名称:可选参数,被打开窗口的名称。
  5. 1.该名称由字母、数字和下划线字符组成。
  6. 2."_top""_blank""_self"具有特殊意义的名称。
  7. _blank:在新窗口显示目标网页
  8. _self:在当前窗口显示目标网页
  9. _top:框架网页中在上部窗口中显示目标网页
  10. 3.相同 name 的窗口只能创建一个,要想创建多个窗口则 name 不能相同。
  11. 4.name 不能包含有空格。
  12. 参数字符串:可选参数,设置窗口参数,各参数用逗号隔开。

参数表:

实例:

  1. <script type="text/javascript"> window.open
  2.  
  3. ('http://www.imooc.com','_blank','width=300,height=200,menubar=no,toolbar=no,
  4.  
  5. status=no,scrollbars=yes')
  6. </script>

截取href:

  1. <script>
  2. function GetRequest() {
  3. var url = location.search; // 获取url中"?"符后的字串
  4. var theRequest = new Object();
  5. if(url.indexOf("?") != -1) {
  6. var str = url.substr(1);
  7. strs = str.split("&");
  8. for(var i = 0; i < strs.length; i++) {
  9. theRequest[strs[i].split("=")[0]] = unescape(strs[i].split("=")[1]);
  10. }
  11. }
  12. window.localStorage.userAccount = theRequest.token;
  13. window.localStorage.userAccount = 'admin';
  14. }
  15. // 页面加载完毕保存userAccount到localStorage
  16. window.onload = GetRequest;
  17. </script>

(2) 改变 HTML 样式:

语法:

  1. Object.style.property=new style;

注意:Object是获取的元素对象,如通过document.getElementById("id")获取的元素。

基本属性表(property):

实例:

  1. <p id="pcon">Hello World!</p>
  2. <script>
  3. var mychar = document.getElementById("pcon");
  4. mychar.style.color="red";
  5. mychar.style.fontSize="20";
  6. mychar.style.backgroundColor ="blue";
  7. </script>

(3)控制类名(className):

语法:

  1. object.className = classname

作用:

  1. 1.获取元素的class 属性
  2.  
  3. 2. 为网页内的某个元素指定一个css样式来更改该元素的外观

实例:

  1. <!DOCTYPE HTML>
  2. <html>
  3. <head>
  4. <meta http-equiv="Content-Type" content="text/html; charset=gb2312">
  5. <title>className属性</title>
  6. <style>
  7. body{ font-size:16px;}
  8. .one{
  9. border:1px solid #eee;
  10. width:230px;
  11. height:50px;
  12. background:#ccc;
  13. color:red;
  14. }
  15. .two{
  16. border:1px solid #ccc;
  17. width:230px;
  18. height:50px;
  19. background:#9CF;
  20. color:blue;
  21. }
  22. </style>
  23. </head>
  24. <body>
  25. <p id="p1" > JavaScript使网页显示动态效果并实现与用户交互功能。</p>
  26. <input type="button" value="添加样式" onclick="add()"/>
  27. <p id="p2" class="one">JavaScript使网页显示动态效果并实现与用户交互功能。</p>
  28. <input type="button" value="更改外观" onclick="modify()"/>
  29.  
  30. <script type="text/javascript">
  31. function add(){
  32. var p1 = document.getElementById("p1");
  33. p1.className = "one";
  34. }
  35. function modify(){
  36. var p2 = document.getElementById("p2");
  37. p2.className = "two";
  38. }
  39. </script>
  40. </body>
  41. </html>

(4) a++ 和 ++a

b = a++;  //  让 a 将值赋给变量b,然后执行自增

b = ++a;  //  让 a 先执行自增,然后将值赋给变量b

(5) 事件

(6) 对象

1.Date 日期对象

  1. var Udate=new Date();

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

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

  1. Udate.getFullYear(); // 年
  2. Udate.getMonth() + 1; // 月
  3. Udate.getDate(); // 日
  4.  
  5. Udate.getDay(); // 星期(数值形式 0-6)

2.String 对象

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

语法:

  1. stringObject.charAt(index)

参数说明:

注意:

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

2.如果参数 index 不在 0 与 string.length-1 之间,该方法将返回一个空字符串。

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

语法:

  1. stringObject.indexOf(substring, startpos)

参数说明:

说明:

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

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

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

注意:

1.indexOf() 方法区分大小写。

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

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

语法:

  1. stringObject.split(separator,limit)

参数说明:

注意:

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

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

语法:

  1. stringObject.substring(startPos,stopPos)

参数说明:

注意:

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

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

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

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

语法:

  1. stringObject.substr(startPos,length)

参数说明:

注意:

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

如果startPos为负数且绝对值大于字符串长度,startPos为0。

3.Math 对象

Math 对象属性

Math 对象方法

ceil() 方法可对一个数进行向上取整。

语法:

  1. Math.ceil(x)

参数说明:

注意:它返回的是大于或等于x,并且与x最接近的整数。

floor() 方法可对一个数进行向下取整。

语法:

  1. Math.floor(x)

参数说明:

注意:返回的是小于或等于x,并且与 x 最接近的整数。

round() 方法可把一个数字四舍五入为最接近的整数。

语法:

  1. Math.round(x)

参数说明:

注意:

1. 返回与 x 最接近的整数。

2. 对于 0.5,该方法将进行上舍入。(5.5 将舍入为 6)

3. 如果 x 与两侧整数同等接近,则结果接近 +∞方向的数字值 。(如 -5.5 将舍入为 -5; -5.52 将舍入为 -6),如下图:

random() 方法可返回介于 0 ~ 1(大于或等于 0 但小于 1 )之间的一个随机数。

语法:

  1. Math.random();

注意:返回一个大于或等于 0 但小于 1 的符号为正的数字值。

4.Array 数组对象

数组定义的方法:

(1) 定义了一个空数组:

  1. var 数组名= new Array();

(2) 定义时指定有n个空元素的数组:

  1. var 数组名 =new Array(n);

(3) 定义数组的时候,直接初始化数据:

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

数组元素使用:

  1. 数组名[下标] = 值;

注意: 数组的下标用方括号括起来,从0开始。

数组属性:

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

数组方法:

concat() 方法用于连接两个或多个数组。此方法返回一个新数组,不改变原来的数组。

语法:

  1. arrayObject.concat(array1,array2,...,arrayN)

参数说明:

注意:  该方法不会改变现有的数组,而仅仅会返回被连接数组的一个副本。

join()方法用于把数组中的所有元素放入一个字符串。元素是通过指定的分隔符进行分隔的。

语法:

  1. arrayObject.join(分隔符)

参数说明:

reverse() 方法用于颠倒数组中元素的顺序。

语法:

  1. arrayObject.reverse()

注意:该方法会改变原来的数组,而不会创建新的数组。

slice() 方法可从已有的数组中返回选定的元素。

语法:

  1. arrayObject.slice(start,end)

参数说明:

1.返回一个新的数组,包含从 start 到 end (不包括该元素)的 arrayObject 中的元素。

2. 该方法并不会修改数组,而是返回一个子数组。

注意:

1. 可使用负值从数组的尾部选取元素。

2.如果 end 未被规定,那么 slice() 方法会选取从 start 到数组结尾的所有元素。

3. String.slice() 与 Array.slice() 相似。

sort()方法使数组中的元素按照一定的顺序排列。

语法:

  1. arrayObject.sort(方法函数)

参数说明:

1.如果不指定<方法函数>,则按unicode码顺序排列。

2.如果指定<方法函数>,则按<方法函数>所指定的排序方法排序。

  1. myArray.sort(sortMethod);

注意:

该函数要比较两个值,然后返回一个用于说明这两个值的相对顺序的数字。比较函数应该具有两个参数 a 和 b,其返回值如下:

若返回值<=-1,则表示 A 在排序后的序列中出现在 B 之前。
  若返回值>-1 && <1,则表示 A 和 B 具有相同的排序顺序。
  若返回值>=1,则表示 A 在排序后的序列中出现在 B 之后。

实例:

  1. <script type="text/javascript">
  2. function sortNum(a,b) {
  3. return a - b;
  4. //升序,如降序,把“a - b”该成“b - a”
  5. }
  6. var myarr = new Array("80","16","50","6","100","1");
  7. document.write(myarr + "<br>");
  8. document.write(myarr.sort(sortNum));
  9. </script>

运行结果:

  1. 80,16,50,6,100,1
  2. 1,6,16,50,80,100

小结:

  1. <script type="text/javascript">
  2.  
  3. //通过javascript的日期对象来得到当前的日期,并输出。
  4. var myDate = new Date();
  5. var year = myDate.getFullYear();
  6. var month = myDate.getMonth() + 1;
  7. var date = myDate.getDate();
  8. var weekday = ["星期日","星期一","星期二","星期三","星期四","星期五","星期六"];
  9. var day = myDate.getDay();
  10. document.write(year + "年" + month + "月" + date + "日" + weekday[day]); // 输入当前日期(*年*月*日 星期*)
  11.  
  12. //成绩是一长窜的字符串不好处理,找规律后分割放到数组里更好操作哦
  13. var scoreStr = "小明:87;小花:81;小红:97;小天:76;小张:74;小小:94;小西:90;小伍:76;小迪:64;小曼:76";
  14.  
  15. var initArr = scoreStr.split(';');
  16. var scoreArr = new Array();
  17. for(var i=0;i<initArr.length;i++){
  18. scoreArr[i] = initArr[i].split(":")[1];
  19. }
  20.  
  21. //从数组中将成绩撮出来,然后求和取整,并输出。
  22. var scoreSum = 0;
  23. for(var i=0;i<scoreArr.length;i++){
  24. scoreSum += Number(scoreArr[i]); // 总值
  25. }
  26.  
  27. var score = parseInt(scoreSum/(scoreArr.length));
  28. document.write(score); // 平均值
  29.  
  30. </script>

(7) window 对象

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

window对象方法:

javascript 计时器

计时器类型:
一次性计时器:仅在指定的延迟时间之后触发一次。
间隔性触发计时器:每隔一定的时间间隔就触发一次。
计时器方法:

setInterval(),在执行时,从载入页面后每隔指定的时间执行代码。

语法:

  1. setInterval(代码,交互时间);

参数说明:

1. 代码:要调用的函数或要执行的代码串。

2. 交互时间:周期性执行或调用表达式之间的时间间隔,以毫秒计(1s=1000ms)。

返回值:

一个可以传递给 clearInterval() 从而取消对"代码"的周期性执行的值。

调用函数格式(假设有一个clock()函数):

  1. setInterval("clock()",1000)

  2. setInterval(clock,1000)

clearInterval() 方法可取消由 setInterval() 设置的交互时间。

语法:

  1. clearInterval(id_of_setInterval)

参数说明:

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

实例:

  1. <!DOCTYPE HTML>
  2. <html>
  3. <head>
  4. <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
  5. <title>计时器</title>
  6. <script type="text/javascript">
  7. function clock(){
  8. var time=new Date();
  9. document.getElementById("clock").value = time;
  10. }
  11. // 每隔100毫秒调用clock函数,并将返回值赋值给i
  12. var i=setInterval("clock()",100);
  13. </script>
  14. </head>
  15. <body>
  16. <form>
  17. <input type="text" id="clock" size="50" />
  18. <input type="button" value="Stop" onclick="clearInterval(i)" />
  19. </form>
  20. </body>
  21. </html>

setTimeout()计时器,在载入后延迟指定时间后,去执行一次表达式,仅执行一次。

语法:

  1. setTimeout(代码,延迟时间);

参数说明:

1. 要调用的函数或要执行的代码串。
2. 延时时间:在执行代码前需等待的时间,以毫秒为单位(1s=1000ms)。

setTimeout()和clearTimeout()一起使用,停止计时器。

语法:

  1. clearTimeout(id_of_setTimeout)

参数说明:

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

实例:

  1. <!DOCTYPE HTML>
  2. <html>
  3. <head>
  4. <script type="text/javascript">
  5. var num=0,i;
  6. function timedCount(){
  7. document.getElementById('txt').value=num;
  8. num=num+1;
  9. i=setTimeout(timedCount,1000);
  10. }
  11. setTimeout(timedCount,1000);
  12. function stopCount(){
  13. clearTimeout(i);
  14. }
  15. </script>
  16. </head>
  17. <body>
  18. <form>
  19. <input type="text" id="txt">
  20. <input type="button" value="Stop" onClick="stopCount()">
  21. </form>
  22. </body>
  23. </html>

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

注意:

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

语法:

  1. window.history.[属性|方法]

注意:window可以省略。

History 对象属性

History 对象方法

back()方法,加载 history 列表中的前一个 URL。

语法:

  1. window.history.back();

比如,返回前一个浏览的页面,代码如下:

  1. window.history.back();

注意:等同于点击浏览器的倒退按钮。

back()相当于go(-1),代码如下:

  1. window.history.go(-1);

forward()方法,加载 history 列表中的下一个 URL。

如果倒退之后,再想回到倒退之前浏览的页面,则可以使用forward()方法,代码如下:

  1. window.history.forward();

注意:等价点击前进按钮。

forward()相当于go(1),代码如下:

  1. window.history.go(1);

go()方法,根据当前所处的页面,加载 history 列表中的某个具体的页面。

语法:

  1. window.history.go(number);

参数说明:

浏览器中,返回当前页面之前浏览过的第二个历史页面,代码如下:

  1. window.history.go(-2);

注意:和在浏览器中单击两次后退按钮操作一样。

同理,返回当前页面之后浏览过的第三个历史页面,代码如下:

  1. window.history.go(3);

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

语法:

  1. location.[属性|方法]

location对象属性图示:

location 对象属性:

location 对象方法:

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

对象属性:

返回用户代理头的字符串表示(就是包括浏览器版本信息等的字符串)

语法:

  1. navigator.userAgent

几种浏览的user_agent.,像360的兼容模式用的是IE、极速模式用的是chrom的内核。

实例:

  1. <!DOCTYPE HTML>
  2. <html>
  3. <head>
  4. <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
  5. <title>navigator</title>
  6. <script type="text/javascript">
  7. function validB(){
  8. var u_agent = navigator.userAgent;
  9. var B_name="不是想用的主流浏览器!";
  10. if(u_agent.indexOf("Firefox")>-1){
  11. B_name="Firefox";
  12. }else if(u_agent.indexOf("Chrome")>-1){
  13. B_name="Chrome";
  14. }else if(u_agent.indexOf("MSIE")>-1&&u_agent.indexOf("Trident")>-1){
  15. B_name="IE(8-10)";
  16. }
  17. document.write("浏览器:"+B_name+"<br>");
  18. document.write("u_agent:"+u_agent+"<br>");
  19. }
  20. </script>
  21. </head>
  22. <body>
  23. <form>
  24. <input type="button" value="查看浏览器" >
  25. </form>
  26. </body>
  27. </html>

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

语法:

  1. window.screen.属性

对象属性:

屏幕分辨率的高和宽

window.screen 对象包含有关用户屏幕的信息。
1. screen.height 返回屏幕分辨率的高
2. screen.width 返回屏幕分辨率的宽
注意:
1.单位以像素计。
2. window.screen 对象在编写时可以不使用 window 这个前缀。

屏幕可用高和宽度

1. screen.availWidth 属性返回访问者屏幕的宽度,以像素计,减去界面特性,比如任务栏。

2. screen.availHeight 属性返回访问者屏幕的高度,以像素计,减去界面特性,比如任务栏。

注意:

不同系统的任务栏默认高度不一样,及任务栏的位置可在屏幕上下左右任何位置,所以有可能可用宽度和高度不一样。

.

原生 javascript 基础回顾的更多相关文章

  1. Javascript基础回顾 之(一) 类型

    本来是要继续由浅入深表达式系列最后一篇的,但是最近团队突然就忙起来了,从来没有过的忙!不过喜欢表达式的朋友请放心,已经在写了:) 在工作当中发现大家对Javascript的一些基本原理普遍存在这里或者 ...

  2. Javascript基础回顾 之(三) 面向对象

    本来是要继续由浅入深表达式系列最后一篇的,但是最近团队突然就忙起来了,从来没有过的忙!不过喜欢表达式的朋友请放心,已经在写了:) 在工作当中发现大家对Javascript的一些基本原理普遍存在这里或者 ...

  3. Javascript基础回顾 之(二) 作用域

    本来是要继续由浅入深表达式系列最后一篇的,但是最近团队突然就忙起来了,从来没有过的忙!不过喜欢表达式的朋友请放心,已经在写了:) 在工作当中发现大家对Javascript的一些基本原理普遍存在这里或者 ...

  4. JavaScript 基础回顾——对象

    JavaScript是基于对象的解释性语言,全部数据都是对象.在 JavaScript 中并没有 class 的概念,但是可以通过对象和类的模拟来实现面向对象编程. 1.对象 在JavaScript中 ...

  5. JavaScript基础回顾一(类型、值和变量)

    请看代码并思考输出结果 var scope = 'global'; function f(){ console.log(scope); var scope = 'local'; console.log ...

  6. JavaScript 基础回顾——数组

    JavaScript是无类型语言,数组元素可以具有任意的数据类型,同一个数组的不同元素可以具有不同类型.数组的元素设置可以包含其他数组,便于模拟创建多维数组. 1.创建数组 在JavaScript中, ...

  7. JavaScript 基础回顾——函数

    在JavaScript中,函数也是一种数据类型,属于 function 类型,所以使用Function关键字标识函数名.函数可以在大括号内编写代码并且被调用,作为其他函数的参数或者对象的属性值. 1. ...

  8. JavaScript基础回顾

    1, NaN 不是数字  Infinity 无穷大 alert(parseInt("dd")); //NaN alert(1/0); //Infinity 2, 逻辑或 || ,返 ...

  9. 原生javascript 基础动画函数封装(二)

    <!DOCTYPE html> <html> <head> <title></title> <style type="tex ...

随机推荐

  1. linux 设置svn钩子实现自动更新

    一.svn安装设置 1.安装svn启动 yum install subversion 2.建个svn的根目录,因为项目不止一个 mkdir -p /home/svn/3.新建一个新的空的版本仓库(su ...

  2. ubantu对pycharm创建快捷方式

    如果你刚开始没有建立快捷方式自己建立一个快捷方式,方法如下 终端输入:sudo gedit /usr/share/applications/Pycharm.desktop粘贴模板: [Desktop ...

  3. requests库使用socks5代理

    备查: #!usr/bin/env python # coding=utf-8 import requests proxies = {'https': 'https://127.0.0.1:1080' ...

  4. 32、Django实战第32天:我的收藏

    我的收藏有3个页面:课程机构,授课教师,公开课程 课程机构 1.编辑usercenter-fav-org.html继承usercenter-base.html 2.编辑users.views.py . ...

  5. 【Android】自定义View

    内置组件经常不满足我们的需求,那么就要自己来重写了,一般需要实现以下几个父类方法: 1.onMeasure 决定内部View的宽和高,以及自身的宽和高 2.onLayout 决定子View的放置位置 ...

  6. Java 线程 锁

    http://www.blogjava.net/tscfengkui/archive/2010/11/10/337709.html?opt=admin http://hi.baidu.com/xhxz ...

  7. 【分块】【常数优化】【Orz faebdc】洛谷 P1083 NOIP2012提高组 借教室

    分块90分. By AutSky_JadeK [重点在下面] #include<cstdio> #include<cmath> using namespace std; #de ...

  8. 【bzoj1370】【团伙】原来并查集还能这么用?!

    (画师当然是武内崇啦) Description 在某城市里住着n个人,任何两个认识的人不是朋友就是敌人,而且满足: 1. 我朋友的朋友是我的朋友: 2. 我敌人的敌人是我的朋友: 所有是朋友的人组成一 ...

  9. java调用windows的wmi获取设备性能数据

    java调用windows的wmi获取监控数据(100%纯java调用windows的wmi获取监控数据) 转:http://my.oschina.net/noahxiao/blog/73163 纯j ...

  10. yii2.0权限控制 ACF权限

    ACF是一种通过yii\filters\AccessControl类来实现的简单授权 有两种角色 ?:未经认证的游客用户 @:已认证的用户 ACF可同过对角色设置权限控制访问 1)记得引入yii\fi ...