8.7w+
社区成员
var countDownFn = (function () {
function countDown(time, day_elem, hour_elem, minute_elem, second_elem) {
//if(typeof end_time == "string")
var end_time = new Date(time).getTime(),//月份是实际月份-1
//current_time = new Date().getTime(),
sys_second = (end_time - new Date().getTime()) / 1000;
var timer = setInterval(function () {
if (sys_second > 0) {
sys_second -= 1;
var day = Math.floor(sys_second / (60 * 60 * 24));
var hour = Math.floor((sys_second - (day * 60 * 60 * 24)) / 3600);
var minute = Math.floor((sys_second - day * 24 * 60 * 60 - hour * 3600) / 60);
var second = Math.floor(sys_second - day * 24 * 60 * 60 - hour * 3600 - minute * 60);
day_elem && $(day_elem).text(day < 10 ? "0" + day : day);//计算天
$(hour_elem).text(hour < 10 ? "0" + hour : hour);//计算小时
$(minute_elem).text(minute < 10 ? "0" + minute : minute);//计算分
$(second_elem).text(second < 10 ? "0" + second : second);// 计算秒
} else {
clearInterval(timer);
}
}, 1000);
};
return {
'countDown': countDown
}
})(window.countDownFn || {})
$(function () {
var countDownShow = (function (countDownFn) {
var num = new Date("2018/05/15 20:00:00").getTime() - new Date().getTime();
num -= 1;
var myDay = Math.floor(((num / 1000 ) / 3600) / 24);
//判断大于一天的时候显示:天时分;小于一天的时候显示:时分秒
if (myDay <= 0) {
countDownFn.countDown("2018/05/15 20:00:00", "#edu_colockbox .colDay", "#edu_colockbox .colHour", "#edu_colockbox .colMinute", "#edu_colockbox .colSecond");
$('.colDay').hide();
$('.colTxt_day').hide();
} else {
countDownFn.countDown("2018/05/15 20:00:00", "#edu_colockbox .colDay", "#edu_colockbox .colHour", "#edu_colockbox .colMinute", "#edu_colockbox .colSecond");
$('.colSecond').hide();
$('.colTxt_second').hide();
}
})(countDownFn || {})
});
你要解释什么?代码中的注解已经说明代码的作用了。
function t(){} 执行 t() t就是这个方法的一个标识(这样理解) 小括号的作用有把一部分东西作为一个整体使用的意思 你可以把前面那个先看成(t)()=(function t(){})() 那么这个t应该就不需要了吧,所以就变成了(function(){})() 然后为什么又使用一个变量去接收这个方法 就js里面 都是弱数据类型,任何类型的数据都可以赋值给一个变量 而且js的数据类型中包含了方法,这里其实就是这样的 var j = (function(){})() 等同于 var j = t();
[quote=引用 2 楼 CSY_Admin 的回复:] [quote=引用 1 楼 jslang 的回复:] var j=(function(){})() 等同 var f=function(){}; var j=f()
[quote=引用 1 楼 jslang 的回复:] var j=(function(){})() 等同 var f=function(){}; var j=f()
var countDownShow = (function (countDownFn) {
var num = new Date("2018/05/15 20:00:00").getTime() - new Date().getTime();
num -= 1;
var myDay = Math.floor(((num / 1000 ) / 3600) / 24);
//判断大于一天的时候显示:天时分;小于一天的时候显示:时分秒
if (myDay <= 0) {
countDownFn.countDown("2018/05/15 20:00:00", "#edu_colockbox .colDay", "#edu_colockbox .colHour", "#edu_colockbox .colMinute", "#edu_colockbox .colSecond");
$('.colDay').hide();
$('.colTxt_day').hide();
} else {
countDownFn.countDown("2018/05/15 20:00:00", "#edu_colockbox .colDay", "#edu_colockbox .colHour", "#edu_colockbox .colMinute", "#edu_colockbox .colSecond");
$('.colSecond').hide();
$('.colTxt_second').hide();
}
})(countDownFn || {})
[quote=引用 1 楼 jslang 的回复:] var j=(function(){})() 等同 var f=function(){}; var j=f()
[quote=引用 1 楼 jslang 的回复:] var j=(function(){})() 等同 var f=function(){}; var j=f()
var j=(function(){})() 等同 var f=function(){}; var j=f()