一、JavaScript代码复用单位是函数,函数可以包含一段可执行代码,也可以接收调用者传入的参数。JavaScript定义函数主要有以下2种方式:
第一种方式:有名函数
定义函数:function 函数名(形式参数列表){}
调用函数:函数名(实际参数列表)
注意:函数不调用,不会执行里面代码,只有调用几次执行几次
例:
1.弹出新年好:
function method(a){
alert("新年好");
}
method(a);
2.写一个方法,给两个整数,求和
function add(a,b){
var sum=a+b;
document.write(a+"+"+b+"="+sum);
}
add(10,20);
return 值:将值返回给调用者,谁调用给我,我就返回给谁
例:
1.写一个方法计算1-100的和,结果不在方法中打印,而是返回给调用者打印
function add(){
var sum=0;
for(var i=1;i<=100;i++){
sum=sum+i;
}
return sum;
}
var s=add();
alert(s);
第二种方式:匿名函数
定义匿名函数:例如
var f=function(){
return"元宵节快乐";
}
函数调用:
var s=f();
alert(s);
注意:函数的形参不需要做类型声明,也不要加var,这是JavaScript属于弱类型语言的一种表现。
二、局部变量和局部函数:
1.根据变量的定义范围不同,变量有全局变量和局部变量之分,直接定义的变量时全局变量,
在函数中定义的变量称为局部变量,局部变量只能在函数内有效,如果全局变量和局部变量
使用相同的变量名,则局部变量将覆盖全局变量。
2.与局部变量对应的是局部函数,局部函数是在函数中定义的,外部函数可以直接调用其内
部的函数,在外部函数外直接调用内部函数是不可以的,所以只有当外部函数被调用时,内
部局部函数才会被执行。
三、常用的内置对象
1.创建Date对象方法
new Date()
new Date(month,dd,yyyy hh:mm:ss)
new Date(yyyy,mth,dd,hh,mm,ss)
new Date(yyyy,mth,dd)
new Date(ms)
2.Date对象获取时间细节方法:
getDate() 从Date对象返回一个月中的某一天(1~31)
getDay() 从Date对象返回一周中的某一天(0~6)
getMonth() 从Date对象返回月份(0~11)
getFullYear() 从Date对象以四位数字返回年份
getHours() 返回Date对象的小时(0~23)
getMinutes() 返回Date对象的分钟(0~59)
getSeconds() 返回Date对象的秒数(0~59)
getTime() 返回1970年1月1日至今的毫秒数
3.Date对象设置时间的方法:
setDate() 设置Date对象中月的某一天(1~31)
setMonth() 设置Date对象中月份(0~11)
setFullYear() 设置Date对象中的年份(四位数字)
setHours() 设置Date对象中的小时(0~23)
setMinutes() 设置Date对象中的分钟(0~59)
setSeconds() 设置Date对象中的秒钟(0~59)
setMilliseconds() 设置Date对象中的毫秒(0~999)
例:1.获取当前时间年月日时分秒,并根据week判断周几
var date=new Date();
var year=date.getFullYear();
var month=date.getMonth()+1;
var day=date.getDate();
var hour=date.getHours();
var min=date.getMinutes();
var sc=date.getSeconds();
var weekday=["星期天","星期一","星期二","星期三","星期四","星期五","星期六",];
var week=weekday[date.getDay()];
document.write(year+"年"+month+"月"+day+"日"+hour+":"+min+":"+sc+week+"<br>");
2.计算自己出生了多少天:(当前日期的毫秒值-出生日期的毫秒值)/1000/60/60/24
var times=date.getTime();
var oldTime = (new Date("1995/01/11 19:44:11")).getTime();
var birth=(parseInt((times-oldTime)/1000/60/60/24));
document.write(birth+"天");