一、变量的作用域

javascript脚本的执行过程分为两个阶段:

第一阶段,js引擎()先扫描整个javascript代码。当碰到<script>时,会先创建一个全局的活动对象,将<script>中出现的变量的声明,函数的定义保存在活动对 象里面。如果碰到函数,则创建对应的局部活动对象,将函数内部的变量的声明及函数的定义保存在该活动对象里面。

第二阶段,执行javascript代码,遇到变量,会先从对应的活动对象里面查找,找不到,找上一层的活动对象。

<html>
<head>
<script>
var i = 100;
function f1(){
alert(i);
var i = 1000;
}
function f2(){
var i = 1000;
alert(i);
}
function f3(){
alert(i);
i = 1000;
}
function f4(){
alert(i);
i = 1000;
function f5(){
var i = 10000;
}
}
f1(); //结果是undefined
f2(); //结果是1000
f3(); //结果是100
</script>
</head>
<body> </body>
<!--
预编译--对脚本扫描
js引擎--创建一个全局活动对象(i和f1)--创建一个局部的活动对象(i)s
-->
</html>

二、Math(javascript内置的一个对象,可以直接使用)

Math.random(): 返回0到1之间的随机数  0<= 随机数 <1

Math.ceil():  向上取整

Math.floor(): 向下取整

<html>
<head>
<script>
function f1(){
var a1 = Math.random();
alert(a1);
var a2 = 100.68;
alert(Math.ceil(a2));
alert(Math.floor(a2));
}
function f2(){
Math.floor(Math.random()*33);
}
f1();
</script>
</head>
<body>
</body>
<html>

三、W3C DOM模型

1、什么是dom

document object model(文档对象模型)

将一个结构化的文档(xml, html)转换成一颗树,并提供对树的操作(包括遍历,查找,修改,删除等)相关的属性或者方法

2、w3c dom模型的基本结构

Node

Document

HTMLDocument  (<html>)

HTMLBodyElement  (<body>)

Element

HTMLElement

HTMLFormElement  (<form>)

HTMLInputElement  (<input>)

HTMLSelectElement (<select>)

HTMLOptionElement  (<option>)

小强的HTML5移动开发之路(29)—— JavaScript回顾4的更多相关文章

  1. 小强的HTML5移动开发之路(18)——HTML5地理定位

    来自:http://blog.csdn.net/dawanganban/article/details/18192091 在前面的<小强的HTML5移动开发之路(2)--HTML5的新特性> ...

  2. 小强的HTML5移动开发之路(14)——Video标签详解

    来自:http://blog.csdn.net/dawanganban/article/details/18180605 在前面的小强的HTML5移动开发之路(5)--制作一个漂亮的视频播放器中制作了 ...

  3. 小强的HTML5移动开发之路(13)——HTML5中的全局属性

    来自:http://blog.csdn.net/dawanganban/article/details/18179483 一.accssskey  快捷键 <!DOCTYPE HTML> ...

  4. 小强的HTML5移动开发之路(11)——链接,图片,表格,框架

    来自:http://blog.csdn.net/dawanganban/article/details/18098193 一.HTML是什么? HTML(hypertext mark-uplangua ...

  5. 小强的HTML5移动开发之路(42)——HTML4与HTML5文档结构比较

    一般来说,人们在书写包括HTML在内的文档时,习惯上按照类似于"章--节--小节"这样的层次结构来进行. 在HTML4中的描述方式: <html> <head&g ...

  6. 小强的HTML5移动开发之路(37)——jqMobi快速入门

    在<小强的HTML5移动开发之路(33)-- jqMobi基础>中我们了解了什么是jqMobi,并从官方下载了jqMobi开发包,下载后解压目录如下: 拷贝上面的/css目录./plugi ...

  7. 小强的HTML5移动开发之路(33)—— jqMobi基础

    一.什么是jqMobi jqMobi是由appMobi针对HTML5浏览器和移动设备开发的javascript框架,是个极快速的查询选择库,支持W3C查询. 版本 jqMobi源码最初在2012年1月 ...

  8. 小强的HTML5移动开发之路(12)——从一个多媒体标签说起

    来自:http://blog.csdn.net/dawanganban/article/details/18136813 一.视频播放 <html> <head> <ti ...

  9. 小强的HTML5移动开发之路(3)——HTML5与HTML4比较

    来自:http://blog.csdn.net/dawanganban/article/details/17652873 在前面介绍了HTML5的新特性,新标签的使用,智能表单设计,引入多媒体对象,C ...

随机推荐

  1. C#中数组与ArrayList的简单使用

    1. 多维数组 2. 锯齿数组 3. 数组的常用操作 4. ArrayList 1. 多维数组 多维数组:行数和列数在定义时已确定 string[,] arr = new string[2, 3]; ...

  2. 12、python单步调试工具pdb

    pdb 第4种方式是启动Python的调试器pdb,让程序以单步方式运行,可以随时查看运行状态.我们先准备好程序: # err.py s = '0' n = int(s) print(10 / n) ...

  3. Android利用FTP实现与PC的上传和下载,实现二维码扫描下载

    之前给老板所带的本科生课程实验所写的代码,拿出来分享一下. 下载地址:  https://github.com/smartshuai/ConnectHelper.git

  4. Project Euler 613 Pythagorean Ant(概率+积分)

    题目链接:点击我打开题目链接 题目大意: 给你一只蚂蚁,它在一个 边长为 \(30-40-50\) 的直角三角形\((x,y)\)上,并且它在直角三角形中选择的位置和移动方向的概率都是相等的.问你这只 ...

  5. 【Codeforces Round #442 (Div. 2) D】Olya and Energy Drinks

    [链接] 我是链接,点我呀:) [题意] 给一张二维点格图,其中有一些点可以走,一些不可以走,你每次可以走1..k步,问你起点到终点的最短路. [题解] 不能之前访问过那个点就不访问了.->即k ...

  6. tomcat 服务形式检测

    http://blog.chinaunix.net/uid-20449851-id-2369842.html

  7. ubuntu, 修改hosts文件

    介绍下ubuntu下修改host实现域名指向本地的方法. Ubuntu系统的Hosts只需修改/etc/hosts文件,在目录中还有一个hosts.conf文件,刚开始还以为只需要修改这个就可以了,结 ...

  8. Linux下设置MySQL不区分大写和小写

            MySQL在Linux下数据库名.表名.列名.别名大写和小写规则:  1.数据库名与表名是严格区分大写和小写  2.表的别名是严格区分大写和小写  3.列名与列的别名在全部的情况下均是 ...

  9. C语言主要做哪些方面的开发---一个来自“IT技术学习”微信群的问题及答复

    近期,在"IT技术学习"微信群中,有同学问了这样一个问题:C语言主要做哪些方面的开发?在这篇文章中,我想结合自身的经验,对这个问题进行下解答. C语言是计算机及其相关专业(如通信. ...

  10. ZOJ List the Books 水~

    http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemId=1727 题目大意: 给你书名.出版时间.价格,让你按照一定的顺序排序.. 其中题 ...