楼主: keaide

JavaScript教程

[复制链接]
论坛徽章:
456
ITPUB年度最佳版主
日期:2011-12-28 15:24:18马上有对象
日期:2014-02-19 11:55:14马上有钱
日期:2014-02-19 11:55:14马上有房
日期:2014-02-19 11:55:14马上有车
日期:2014-02-19 11:55:14ITPUB年度最佳版主
日期:2014-02-19 10:05:27优秀写手
日期:2013-12-18 09:29:09ITPUB社区千里马徽章
日期:2013-06-09 10:15:34ITPUB年度最佳版主
日期:2013-01-30 17:30:25版主9段
日期:2012-07-03 02:21:03
61#
 楼主| 发表于 2006-5-28 21:51 | 只看该作者
首行,“x”,表示“本身加x”。若已有a_number=5,那么可
写成,a_number+=3,即是说:a_number=a_number+3。程序员
就是这么偷懒的。

下行,loop++,意味着“自身加1”。于是loop++即为:
loop=loop=1。它也可写成loop+=1。这样偷懒行为非常有效。

就象不止一种方式在一个数上加1一样,也有不止一种方法来写
一个循环。While循环不是唯一的循环模式,另一流行的循环
是for循环。

使用道具 举报

回复
论坛徽章:
456
ITPUB年度最佳版主
日期:2011-12-28 15:24:18马上有对象
日期:2014-02-19 11:55:14马上有钱
日期:2014-02-19 11:55:14马上有房
日期:2014-02-19 11:55:14马上有车
日期:2014-02-19 11:55:14ITPUB年度最佳版主
日期:2014-02-19 10:05:27优秀写手
日期:2013-12-18 09:29:09ITPUB社区千里马徽章
日期:2013-06-09 10:15:34ITPUB年度最佳版主
日期:2013-01-30 17:30:25版主9段
日期:2012-07-03 02:21:03
62#
 楼主| 发表于 2006-5-28 21:51 | 只看该作者
第五页:For循环
上例中while循环可以写成如下形式:


var a_line="";

var loop = 0;

while (loop < width)

{

        a_line = a_line + "x";

        loop=loop+1;

}


也可用For Loop写成:

      
var a_line="";

for (loop=0; loop < width; loop++)

{

        a_line = a_line + "x";

}

使用道具 举报

回复
论坛徽章:
456
ITPUB年度最佳版主
日期:2011-12-28 15:24:18马上有对象
日期:2014-02-19 11:55:14马上有钱
日期:2014-02-19 11:55:14马上有房
日期:2014-02-19 11:55:14马上有车
日期:2014-02-19 11:55:14ITPUB年度最佳版主
日期:2014-02-19 10:05:27优秀写手
日期:2013-12-18 09:29:09ITPUB社区千里马徽章
日期:2013-06-09 10:15:34ITPUB年度最佳版主
日期:2013-01-30 17:30:25版主9段
日期:2012-07-03 02:21:03
63#
 楼主| 发表于 2006-5-28 21:52 | 只看该作者
for循环的格式为:

      

for (initial value; test; increment)

{

        do this stuff;

}


这样,上述for loop设置loop=0并持续加1直到loop<width,这
和上例中while loop相同,仅是少了数行而已。都表示
“在a_line上加width次x”。

在我们练习使用循环之前应明白一件事:循环可以嵌套。这里
有一个关于嵌套循环的例子。

使用道具 举报

回复
论坛徽章:
456
ITPUB年度最佳版主
日期:2011-12-28 15:24:18马上有对象
日期:2014-02-19 11:55:14马上有钱
日期:2014-02-19 11:55:14马上有房
日期:2014-02-19 11:55:14马上有车
日期:2014-02-19 11:55:14ITPUB年度最佳版主
日期:2014-02-19 10:05:27优秀写手
日期:2013-12-18 09:29:09ITPUB社区千里马徽章
日期:2013-06-09 10:15:34ITPUB年度最佳版主
日期:2013-01-30 17:30:25版主9段
日期:2012-07-03 02:21:03
64#
 楼主| 发表于 2006-5-28 21:52 | 只看该作者
第六页:嵌套循环
这是程序:


var height = prompt("How high do you
want the grid? (1-10 is good)","10";

var width= prompt("How wide do you want
the grid? (1-10 is good)","10";

var a_line;

var new_window =
window.open("/webmonkey/98/04/files1a
/grid.html","looper","width=400,height=400";

new_window.document.writeln("<h1>A Grid</h1>";

for (height_loop = 0; height_loop
< height; height_loop++)

{

a_line = "";

for (width_loop = 0;
width_loop < width; width_loop++)

{

a_line+="x";

}

使用道具 举报

回复
论坛徽章:
456
ITPUB年度最佳版主
日期:2011-12-28 15:24:18马上有对象
日期:2014-02-19 11:55:14马上有钱
日期:2014-02-19 11:55:14马上有房
日期:2014-02-19 11:55:14马上有车
日期:2014-02-19 11:55:14ITPUB年度最佳版主
日期:2014-02-19 10:05:27优秀写手
日期:2013-12-18 09:29:09ITPUB社区千里马徽章
日期:2013-06-09 10:15:34ITPUB年度最佳版主
日期:2013-01-30 17:30:25版主9段
日期:2012-07-03 02:21:03
65#
 楼主| 发表于 2006-5-28 21:52 | 只看该作者
new_window.document.writeln
(a_line + "<br>";

}


在请求高及宽后,打开一新窗口,并为它写一个头,进入for
循环。第一个for循环设a_line=“”。试一下不用该行做一下
本例,看看会发生什么。在初始化a_line后,程序进入下一个
for循环,当宽达到所需值后,建立X`S行并将它显现在新窗
口中。这些将发生height次。

好,现在你的任务:看一下这个循环练习并亲自试着在看源码
前写一个。

使用道具 举报

回复
论坛徽章:
456
ITPUB年度最佳版主
日期:2011-12-28 15:24:18马上有对象
日期:2014-02-19 11:55:14马上有钱
日期:2014-02-19 11:55:14马上有房
日期:2014-02-19 11:55:14马上有车
日期:2014-02-19 11:55:14ITPUB年度最佳版主
日期:2014-02-19 10:05:27优秀写手
日期:2013-12-18 09:29:09ITPUB社区千里马徽章
日期:2013-06-09 10:15:34ITPUB年度最佳版主
日期:2013-01-30 17:30:25版主9段
日期:2012-07-03 02:21:03
66#
 楼主| 发表于 2006-5-28 21:53 | 只看该作者
第七页:循环练习
循环练习程序要求一些字然后反向显示。试着自己写一下程
序,再看源码了解其原理。问题不大了吧,现在开始学习数组。

使用道具 举报

回复
论坛徽章:
456
ITPUB年度最佳版主
日期:2011-12-28 15:24:18马上有对象
日期:2014-02-19 11:55:14马上有钱
日期:2014-02-19 11:55:14马上有房
日期:2014-02-19 11:55:14马上有车
日期:2014-02-19 11:55:14ITPUB年度最佳版主
日期:2014-02-19 10:05:27优秀写手
日期:2013-12-18 09:29:09ITPUB社区千里马徽章
日期:2013-06-09 10:15:34ITPUB年度最佳版主
日期:2013-01-30 17:30:25版主9段
日期:2012-07-03 02:21:03
67#
 楼主| 发表于 2006-5-28 21:53 | 只看该作者
第八页:数组
我们已了解变量可是数字、字符串及对象参数。还有一个
Javascript的重要部分:数组。

数组是一种列表。各种列表比如名单、URL以颜色列表都可以存
储在数组中。

这里我们生成颜色的数组:

var colors = new Array("red","blue","green";


现在你就有了一个数组,你能对它做什么呢?数组的优点在于
数组中的各个元素可以通过数字调用。第一个元素的数字是0,
可以用以下方式调用:

var the_element = colors[0];

使用道具 举报

回复
论坛徽章:
456
ITPUB年度最佳版主
日期:2011-12-28 15:24:18马上有对象
日期:2014-02-19 11:55:14马上有钱
日期:2014-02-19 11:55:14马上有房
日期:2014-02-19 11:55:14马上有车
日期:2014-02-19 11:55:14ITPUB年度最佳版主
日期:2014-02-19 10:05:27优秀写手
日期:2013-12-18 09:29:09ITPUB社区千里马徽章
日期:2013-06-09 10:15:34ITPUB年度最佳版主
日期:2013-01-30 17:30:25版主9段
日期:2012-07-03 02:21:03
68#
 楼主| 发表于 2006-5-28 21:53 | 只看该作者
执行这一行JavaScript指令时,变量the_element所被赋予的值
是字符串"red" 。通过写出数组的名称并将数组中元素的顺序号
放在方括号内就可调用数组中的该元素。数组中第2个元素的顺
序号是1。

一旦生成数组后,你可以添加和修改数组值。如果你打算将颜
色数组的第1个元素有红色该为紫色,你可以这样做:


colors[0] = "purple";



数组经常用于循环。下文将讲数组和循环的应用。

使用道具 举报

回复
论坛徽章:
456
ITPUB年度最佳版主
日期:2011-12-28 15:24:18马上有对象
日期:2014-02-19 11:55:14马上有钱
日期:2014-02-19 11:55:14马上有房
日期:2014-02-19 11:55:14马上有车
日期:2014-02-19 11:55:14ITPUB年度最佳版主
日期:2014-02-19 10:05:27优秀写手
日期:2013-12-18 09:29:09ITPUB社区千里马徽章
日期:2013-06-09 10:15:34ITPUB年度最佳版主
日期:2013-01-30 17:30:25版主9段
日期:2012-07-03 02:21:03
69#
 楼主| 发表于 2006-5-28 21:54 | 只看该作者
第九页:数组和循环
数组是一项非常有用的东西,因为你可以循环调用数组中的各
个元素执行某项功能。以下是循环显示一个URL数组中的各个元素
的例子。

首先,要使该例子发挥作用,我们需要声明一些变量:


var url_names = new Array("hits.org","awaken.org","bianca.com";

var a_url;

接下来,我们循环调用数组中的各个元素,打开每
个URL并对待用户点击alert框的OK按钮:

使用道具 举报

回复
论坛徽章:
456
ITPUB年度最佳版主
日期:2011-12-28 15:24:18马上有对象
日期:2014-02-19 11:55:14马上有钱
日期:2014-02-19 11:55:14马上有房
日期:2014-02-19 11:55:14马上有车
日期:2014-02-19 11:55:14ITPUB年度最佳版主
日期:2014-02-19 10:05:27优秀写手
日期:2013-12-18 09:29:09ITPUB社区千里马徽章
日期:2013-06-09 10:15:34ITPUB年度最佳版主
日期:2013-01-30 17:30:25版主9段
日期:2012-07-03 02:21:03
70#
 楼主| 发表于 2006-5-28 21:54 | 只看该作者
for (loop = 0; loop <url_names.length; loop++)

{

// make the name of a url, for example http://www.hits.org/

a_url = "http://www." + url_names[loop] + "/";

// open a window

var new_window=open(a_url,"new_window","width=300,height=300";

// wait for the click

alert("hit ok for the next site";

}

使用道具 举报

回复

您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

TOP技术积分榜 社区积分榜 徽章 团队 统计 知识索引树 积分竞拍 文本模式 帮助
  ITPUB首页 | ITPUB论坛 | 数据库技术 | 企业信息化 | 开发技术 | 微软技术 | 软件工程与项目管理 | IBM技术园地 | 行业纵向讨论 | IT招聘 | IT文档
  ChinaUnix | ChinaUnix博客 | ChinaUnix论坛
CopyRight 1999-2011 itpub.net All Right Reserved. 北京盛拓优讯信息技术有限公司版权所有 联系我们 未成年人举报专区 
京ICP备16024965号-8  北京市公安局海淀分局网监中心备案编号:11010802021510 广播电视节目制作经营许可证:编号(京)字第1149号
  
快速回复 返回顶部 返回列表