JavaScript学习(3)使用内置函数和程序库

来源:互联网 发布:淘宝店铺被恶意刷流量 编辑:程序博客网 时间:2024/06/15 19:56

1.Math对象

  1.1舍入和截取

    ceil(x)向上取整,floor(x)向下取整,round(x)四舍五入,parseInt(x)截取整数.

  1.2生成随机数

    random()方法实现

    例:

    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
 <HEAD>
  <TITLE> 使用Math.random()方法生成随机数 </TITLE>
  <META NAME="Generator" CONTENT="EditPlus">
  <META NAME="Author" CONTENT="">
  <META NAME="Keywords" CONTENT="">
  <META NAME="Description" CONTENT="">
 </HEAD>

 <BODY>
  <center><font size = 4>生成 0~100 之间的随机数</font></center>
  <font size = "+1">
  <table border = "1" cellpadding = "2" cellspacing = "1">
  <script>
  var n = 100;
  for(i = 0; i < 200; i++)
  {
 if(i % 20 == 0)
 {
  document.write("<tr>");
  }
 document.write(Math.floor(Math.random() * (n +1)) + "<td>");
 if((i + 1) % 20 ==0)
 {
  document.write(Math.floor(Math.random() * (n + 1) ));
  }
 }
   </script>
 </BODY>
</HTML>

 1.3其它Math方法

    abs(x)绝对值,exp(x)e的x指数幂,log(x)以10为底取对数,max(x,y)和min(x,y)取最值,pow(x,y)x的y次方,sqrt(x)开平方.

 

2.使用日期

  2.1创建日期对象的几种形式

    var now = new Date;//默认构造

    var myDate = new Date("month, dd, yyyy, hh:mm:ss");//月日年时分秒

    var myDate = new Date("month, dd, yyyy");//月日年

    var myDate = new Date(yyyy, mm, dd, hh, mm, ss);//年月日时分秒

    var myDate = new Date(yyyy, mm, dd);//年月日

    var myDate = new Date(milliseconds);//从1970年1月1日0时到指定日期之间的毫秒总数

  2.2设置日期的方法

    setDate(mm, dd)//设置某月某日

    setMonth(mm)//设置月份

    setFullYear(yyyy)//设置年

    setTime()//设置时间(日期),从1970年1月1日算起的毫秒数值

    setHours(),setMinutes(),setSeconds()//设置时分秒

  2.3读取日期的方法

      getDate(mm, dd)//读取某月某日

    getMonth(mm)//读取月份

    getFullYear(yyyy)//读取年

    getTime()//读取时间(日期),从1970年1月1日算起的毫秒数值

    getHours(),getMinutes(),getSeconds()//读取时分秒

  2.4日期时间的运算

    例:计算两个日期之间的天数

    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
 <HEAD>
  <TITLE> 计算今天到指定日期之间的天数 </TITLE>
  <META NAME="Generator" CONTENT="EditPlus">
  <META NAME="Author" CONTENT="">
  <META NAME="Keywords" CONTENT="">
  <META NAME="Description" CONTENT="">
 </HEAD>
 <BODY>
  <font face = "arial" size = 5 color = red>
  <script>
  var useryear = eval(prompt("请输入年(yyyy): ", "2008"));
  var usermonth = eval(prompt("请输入月(mm): ", "8"));
  var userday = eval(prompt("请输入日(dd): ", "1"));
  var future = new Date(useryear, usermonth - 1, userday);//计算两个日期之间的毫秒数差
  var today = new Date();
  var diff = Math.abs(future.getTime() - today.getTime());
  var days = Math.floor(diff / (1000 * 60 * 60 *24));//将毫秒转换为天数
  document.write(today.toLocaleDateString() + "与" + future.toLocaleDateString() + "之间的天数为: " + days + "<br>");
  </script>
 </BODY>
</HTML>

3第三方程序库

    prototype是一种JavaScript程序库,可以简化处理DOM对象,处理表单数据和远程脚本编写(AJAX)等工作.通过把一个prototype.js文件放入自己的文档,就可以使用基本JavaScript的许多改进功能.

    Script.aculo.us含有一些简化拖放任务的函数,它还包含若干组合特效,用于增强页面过度的高粱河动画效果.

    AJAX可实现JavaScript与Web服务器上锁运行程序之间的通信.这就使JavaScript可以完成原来无法完成的工作,比如在不刷新页面的情况下,动态加载来自数据库的信息.

    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
 <HEAD>
  <TITLE> 局部跟新 </TITLE>
  <META NAME="Generator" CONTENT="EditPlus">
  <META NAME="Author" CONTENT="">
  <META NAME="Keywords" CONTENT="">
  <META NAME="Description" CONTENT="">
 </HEAD>
<script>
    function changeData()
 {
  var node = document.getElementById("myDiv");
  node.firstChild.nodeValue = "更新后的数据";
 }
 </script>
 <BODY>
  <div id = "myDiv">原数据</div>
  <input type = "button" value = "更新数据" onclick = "changeData()">
 </BODY>
</HTML>

4综合实例

    到http://script.aculo.us/downloads下载程序库,然后解压运行里面的test网页可看到一些脚本的演示效果.

    计算停留页面时间

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
 <HEAD>
  <TITLE> 停留页面时间 </TITLE>
  <META NAME="Generator" CONTENT="EditPlus">
  <META NAME="Author" CONTENT="">
  <META NAME="Keywords" CONTENT="">
  <META NAME="Description" CONTENT="">
 </HEAD>
<script>
var myDate =new Date();
document.write("当前日期: " + myDate.getYear() + "年" + myDate.getMonth() + "月" + myDate.getDay() + "日");
function stop()
{
 var now = new Date();
 window.alert("已停留时间 " + (now.getTime() - myDate.getTime())/1000 + "秒");
}
</script>
<input type = button value = "页面浏览时间" onclick ="stop()">
 <BODY>
 </BODY>
</HTML>

原创粉丝点击