前天和昨天大致浏览了犀牛书的函数、类与模块、正则表达式、JavaScript扩展、以及服务端的js。这些方面对于我目前的水平来说比较难,一些最基本的概念都不能领会。不过最复杂的知识占用平时使用的20%,而最简单的知识却占平时使用的80%。本着先学会使用,后继续研究的学习道路,这些内容就暂且搁置,等js主干知识都学习完了,再来看这部分内容。

正文

一、系统、浏览器、网页、Javascript之间的关系。

有必要在学习jsDOM之前先来了解一下这四者之间的关系。

  • 系统为浏览器提供基本的运行环境。一个系统里面可以安装很多的浏览器,firefox,chrome 、IE等等,操作系统为浏览器提供调用计算机硬件的API;

  • 浏览器为网页提供基本的运行环境,一个浏览器里可以跑很多的网页。

  • 一个网页里面可以镶嵌多个其他的网页(通过iframe)。

  • 浏览器提供了javascript的解析引擎,js是一中面向对象的编程语言,因此我们可以操作不同的对象(API)来操作数据或者是页面中的元素(DOM结构)。

二、了解DOM对象。

前几天我的笔记上已经说了,第二天笔记http://www.cnblogs.com/roverliang/p/4979538.html。

引用如下:

js的对象是一个大对象,当create一个页面的时候,就会被js构造器(construct)创造出来 数组对象(Array)、函数对象(function)、日期对象(date)、正则对象(RegExp)以及错误对象(Error).

上面的对象是js的对象,当渲染一个页面的时候,js也会为当前的一个页面生成一个叫window的全局对象。

window对象又有很多属性:

  • location对象。
  • document对象,一般称为DOM。
  • hsitory
  • navigator

windows对象的方法:

  • alert() 方法。 //这里的方法我们可以理解为函数。
  • setTimeout 方法。
  • setInterval 方法。
  • prompt
  • confirm
  • showModalDialog

三、了解window对象的属性以及方法

window对象指的就是当前我们的这个窗口,也就是当前打开的这个网页。

window对象的一些方法:
  • setTimeout 与 setInterval

    //2秒之后弹个2

    setTimeout(function(){

    alert(2);

    },2000);

    //每隔两秒弹个3

    setInterval(function(){

    alert(3);

    },2000);

window 对象的一些属性:
location对象
	document.location = window.location;  //返回truea;

location对象下面也有很多属性与方法:

  • location.toString() 方法返回当前的url。

    var urlpath = location.toString();

  • protocol 网络服务的协议名,如https: 或者http: 返回时带:的。

  • host 返回域名

  • hostname 同host。

  • port 返回“”

  • pathname 返回路径

  • search 返回路径?参数。

  • assign 方法。

  • replace 方法

  • reload() 方法

在书上看到一个关于拼接解析url的原生js代码非常好,抄下来。

	<script>
function urlArgs(){
var args = {};
var query = location.search.substring(1);
var pairs = query.split('&');
for(var i=0;i<pairs.length;i++){
var pos = pairs[i].indexOf('=');
if(pos == -1) continue;
var name = pairs[i].substring(0,pos);
var value = pairs[i].substring(pos+1);
value = decodeURIComponent(value);
args[name] = value;
} return args;
}
</script>
history对象
  • back方法 后退
  • forward 方法 前进
  • go 可以前进也可以后退。
navigator 对象
  • userAgent属性,发送user-Agent http 头部发送的字符串。包含很多的信息。可以判断浏览器以及内核。
  • platform 属性,返回当前的操作系统,测试了下,并不是十分准。
  • geolaction 属性 返回当前用户的地理位置。
  • cookieEnable 属性,检测当前的cookie是否可用。返回true或者false。
screen对象

这个对象第一次用,返回用户的电脑屏幕宽度高度,夜色的位深等等。

open对象
close对象

《JavaScript权威指南》学习笔记 第五天 window对象的方法。的更多相关文章

  1. JavaScript 权威指南-学习笔记(一)

    本文所有教程及源码.软件仅为技术研究.不涉及计算机信息系统功能的删除.修改.增加.干扰,更不会影响计算机信息系统的正常运行.不得将代码用于非法用途,如侵立删! ## JavaScript 权威指南-学 ...

  2. JavaScript权威指南学习笔记6

    这两天主要翻看了书中的第18-22章,重点看了第17章:事件化处理,其它几章节主要是翻了下书知道有相关的概念,没有真正理解其中的内容,或者没有考虑究竟如何能把里面的内容应用到实际的项目中.说的讽刺一点 ...

  3. maven权威指南学习笔记(五)—— POM

    1. 简介 Archetype插件通过 pom.xml 文件创建了一个项目.这就是项目对象模型 (POM),一个项目的声明性描述. 当Maven运行一个目标的时候,每个目标都会访问定 义在项目POM里 ...

  4. maven POM —— maven权威指南学习笔记(五)

    1. 简介 Archetype插件通过 pom.xml 文件创建了一个项目.这就是项目对象模型 (POM),一个项目的声明性描述. 当Maven运行一个目标的时候,每个目标都会访问定 义在项目POM里 ...

  5. JavaScript权威指南学习笔记5

    下午在杭图回去前看了书中第二部分的13-17章,看的很粗,感觉大部分东西自己已经知道或者平时开发中不会用到,很多章节只是简单的翻了一下,没有仔细思考里面说到的道理,下面对各章节简单的记录下. 第13章 ...

  6. Javascript权威指南学习笔记

    第二章:词法结构 ;function a(){alert(2)};//前面的分号保证正确地语句解析 第三章:类型.值和变量 基本概念: 1.数据类型---能够表示并操作的值的类型叫做数据类型. 2.变 ...

  7. javascript权威指南学习笔记1

    打开这本书,进入到javascript的世界.以前都是看各种视频,感觉什么收获也没有,反而弄得脑袋混乱,希望能够按照这本书的节奏掌握javascript这门语言,为我的前端学习打下基础. 学习前准备: ...

  8. JavaScript权威指南学习笔记4

    今天看了第9.10.11章,感觉收获最大还是正则表达式那章节,不过这些不用太多脑子思考,问题用到了直接查书就可以了,下面分别总结一下: 第9章类和模块:分9节,前面8节都是在讲类相关的知识,最后一节讲 ...

  9. javascript权威指南学习笔记3

    今天看到第四章,记录一下其中的几个点,俗话说:好记性不如烂笔头嘛. 4.9   in运算符和instanceof运算符 in运算符希望它的左操作数是一个字符串或可以转化为字符串,希望它的右操作数是一个 ...

随机推荐

  1. C# 7.0 新特性4: 返回引用

    本文参考Roslyn项目中的Issue:#118. 1. C# 7.0 新特性1: 基于Tuple的“多”返回值方法 2. C# 7.0 新特性2: 本地方法 3. C# 7.0 新特性3: 模式匹配 ...

  2. 处理Linux下subversion尝试连接自建的VisualSVN server报“Key usage violation in certificate has been detected”错误的问题

    在Linux下使用subversion尝试链接VisualSVN server搭建的svn库,可能会报下面错误, svn: OPTIONS of 'https://server.domain.loca ...

  3. gulp插件gulp-usemin简单使用

    关于什么是gulp,它和grunt有什么区别等问题,这里不做任何介绍.本文主要介绍如何使用gulp-usemin这款插件,同时也会简单介绍本文中用到的一些插件. 什么是gulp-usemin 用来将H ...

  4. SQLServer数据导入Mongodb

    一.思路 MongoVUE免费版支持MySQL导入Mongo,所以思路是SQLServer导入MySQL,再从MySQL导入Mongo. 二.准备 1,安装mysql数据库(我用的是WAMP,集成my ...

  5. Matlab生成M序列的伪随机码

    伪随机编码中较常用的是m序列,它是线性反馈移位寄存器序列的一种,其特点是在相同寄存器级数的情况下输出序列周期最长.线性反馈移位寄存器的工作原理是,给定所有寄存器一个初始值,当移位脉冲到来时,将最后一级 ...

  6. 【BZOJ 3150】新Nim游戏

    http://www.lydsy.com/JudgeOnline/problem.php?id=3105 并不会QwQ 为什么贪心是正确的. 向小神请教了一个弱智问题(小神好神啊OTZ) 然后就写了一 ...

  7. 大素数测试 求因子 poj 1811

    抄别人的 #include<stdio.h> #include<string.h> #include<algorithm> #include<stdlib.h ...

  8. 【UVALive 4642】Malfatti Circles(圆,二分)

    题 给定三角形,求三个两两相切且与三角形的一条边相切的圆的半径. 二分一个半径,可以得出另外两个半径,需要推一推公式(太久了,我忘记了) #include<cstdio> #include ...

  9. 【POJ 2826】An Easy Problem?!(几何、线段)

    两个木条装雨水能装多少. 两线段相交,且不遮盖的情况下才可能装到水. 求出交点,再取两线段的较高端点的较小值h,(h-交点的y)为三角形的高. 三角形的宽即为(h带入两条线段所在直线得到的横坐标的差值 ...

  10. 改变Yii2的默认路由

    修改配置文件 return [ 'name'=>'AA后台', 'id' => 'app-backend', 'defaultRoute'=>'shop/index',//路由 …… ...