JavaScrip学习之旅(4) 数据类型、定时器、数组
转载请标明是引用于 http://blog.csdn.net/chenyujing5678
欢迎拍砖!
1、JavaScript数据类型
(1)数值型 number
(2)字符串 string
转化:
x = "12.3";y = parseInt(x); // 得12x = "12.3";y = parseFloat(x); // 得12.3
// 将表达式字符串转为表达式的结果y = "3*4";x = eval(x);
(3)布尔型 boolean。
(4)对象型 object,eg:document()、window(浏览器窗口对象)、date(日期对象)、navigate(浏览器本身)等。
eg:
window.status = "博洋"; // 设置状态栏var newdate = new Date("July 29");var today = new Date(); // 没参数表当前的日期
window.setTimeout("a()", 1); // 1以后执行一次a()函数window.setInterval("a()", 1); // 每隔1S执行一个a()函数clearTimeout(); // 清除定时器
java script定时器的应用1:(显示时间)
// java script定时器的应用<script language="javascript">function disptime(){var time = new Date(); // 获了当前时间var hour = time.getHours(); var minute = time.getMinute();var second = time.getSecond();var apm = "AM";if (hour > 12){hour = hour - 12;amp = "pm";}if (minute < 10){minute = "0" + minute;}// 设置文本框的内容为当前的时间document.myform.myclock.value = hour + ":" + minute + ":" + ...;// 设置定时器,隔1S调一次disptime()var myTime = setTimeout("disptime()", 1000);}</script>// 调用方法<body onLoad="disptime()">
java script定时器的应用2:(两秒刷一次页面)
(5)函数 function
函数调用:一般和表单元素的事件一起使用,事件名="函数名".
<SCRIPT language = "javascript">function compute(op){var num1, num2;num1 = parseFloat(document.myform.num1.value); // myform:HTML的FORM节点里的id字段num2 = parseFloat(document.myform.num2.value);if (op == "-"){document.myform.result.value = num1 - num2;}if (op == "*"){}}</SCRIPT><INPUT name="addButton" type="button" id="addButton" value="+" onClick="compute('+')"><!--->(6)Array数组对象
(6、1)Array是一个动态数组,大小不固定,而且是一个像C#中数组、ArrayList、Hashtable等的超强综合体。
var arr = new Array(); arr[0] = "tom"; arr[1] = "jerry"; arr[2] = "lily"; for(var i = 0; i < arr.length; i++){ alert(arr[i]); }
(6、2)属性
length:数组元素个数;
join(分隔符):将数组元素中加分隔符号后串接并返回一个字符串;
reserse():将数组元素按照原先相反位置存放;
slice(始[,终):返回一个子数组;
// 一维数组var a=new Array(10);var n = new Array();var a = new Array(1, 2, 3);var a = new Array("a", "b", "c");// 二维数组var a = new Array(2);a[0] = new Array(3);a[1] = new Array(3);
(6、3)Array的简化声明
var arr = [3, 5, 6, 8, 9]; // 普通数组初始化pinyins["人"] = "ren"; // key
(6、4)练习
(练习一) 求一个数组中的最大值function getMax(arr) { var max = arr[0]; for(var i = 0; i < arr.length; i++){ if (arr[i] > max) { max = arr[i]; } } return max; } var arr1 = new Array(); arr1[0] = 20; arr1[1] = 10; arr1[2] = 21; alert(getMax(arr1));
alert(arr);其实是调用了Array 的toString 的方法,它将数组元素拼接起来。
var arr = new Array(); arr[0] = "tom"; arr[1] = "jerry"; arr[2] = "lily"; alert(arr); // 其实是调用了Array toString 的方法
得到:
function myreserve(arr){ // 传递进来的不是拷贝 for(var i = 0; i < arr.length/2; i++){ var temp = arr[i]; arr[i] = arr[arr.length - i - 1]; arr[arr.length - i - 1] = temp; } } var arr = new Array(); arr[0] = "tom"; arr[1] = "jerry"; arr[2] = "lily"; alert(arr); // 其实是调用了Array toString 的方法 myreserve(arr); alert(arr);
function myjoin(arr) { if (arr.length <= 0) { return ""; } var s = arr[0]; for(var i = 1; i < arr.length; i++){ s = s + "|" + arr[i]; } return s; } var arr = new Array(); arr[0] = "tom"; arr[1] = "jerry"; arr[2] = "lily"; alert(myjoin(arr));
2、
void 执行一个程序语句,eg
<a href="javascript:void(n++)">void执行</a>