首页 前端知识 基于Jquery实现一个cron表达式选择器,2024年最新头条技术面试总共几轮

基于Jquery实现一个cron表达式选择器,2024年最新头条技术面试总共几轮

2024-05-07 13:05:04 前端知识 前端哥 882 205 我要收藏

先自我介绍一下,小编浙江大学毕业,去过华为、字节跳动等大厂,目前阿里P7

深知大多数程序员,想要提升技能,往往是自己摸索成长,但自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年最新Python全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友。
img
img



既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上Python知识点,真正体系化!

由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新

如果你需要这些资料,可以添加V获取:vip1024c (备注Python)
img

正文

selectorTypeEnum = {

period:‘period’,

assign:‘assign’,

empty:‘empty’,

};

var typeToName = function (timeType) {

return timeNames[timeTypes.indexOf(timeType)];

};

var typeToValueScope = function (timeType) {

var timeValue = timeValues[timeTypes.indexOf(timeType)];

return timeValue ? timeValue.split(‘-’) : timeValue;

};

$.cronSelector = function(options){

var options = this.options = $.extend(defaultOptions,options);

var container = this.container = ( ′ < d i v c l a s s = " p b − t a g − b o x ′ + t h i s . o p t i o n s [ ′ c o n t a i n e r C l a s s ′ ] + ′ " > < / d i v > ′ ) . a p p e n d T o ( ('<div class="pb-tag-box ' + this.options['containerClass'] + '"></div>').appendTo( (<divclass="pbtagbox+this.options[containerClass]+"></div>).appendTo((options[‘container’]));

//初始化时间类型切换html

var renderTabHtml = function(){

var tabHtml = [‘

’];

var tabItemHtml = [‘

’];

for(var i = 0 ; i < timeTypes.length ; i++){

tabHtml.push(‘

’+timeNames[i]+‘ ’);

tabItemHtml.push(‘

’);

}

tabHtml.push(‘’);

tabItemHtml.push(‘’);

container.append(tabHtml.join(‘’));

return container.append(tabItemHtml.join(‘’));

};

var getTimeItemContainer = function(timeType){

return $(‘div[tabItemCode=’+timeType+‘]’,container);

};

//初始化周期时间类型选择器

var renderPeriodHtml = function(timeType){

var timeContainer = getTimeItemContainer(timeType);

var typeName = typeToName(timeType);

var valueScope = typeToValueScope(timeType) || [‘’,‘’];

var min = valueScope[0];

var max = valueScope[1];

$(timeContainer).append(‘

\n’ +

’ 从'+typeName+‘开始,\n’ +

’ 到'+typeName+‘结束,\n’ +

’ 每'+typeName+‘执行一次\n’ +

’ ');

};

//初始化指定时间类型选择器

var renderAssignHtml = function(timeType){

var timeContainer = getTimeItemContainer(timeType);

var valueScope = typeToValueScope(timeType);

if(valueScope){

var timeValues = [‘

\n’ +

\n’ +

’ 指定时间’ +

’ '];

for(var i = valueScope[0];i <= valueScope[1];i++){

timeValues.push(‘\n’ +

’ ’ + i +

’ ');

}

timeValues.push(‘’);

$(timeContainer).append(timeValues.join(‘’));

}

}

//初始化时间类型选择器

var renderTimeItemHtml = function(){

for(var i= 0;i<timeTypes.length;i++){

renderPeriodHtml(timeTypes[i]);

renderAssignHtml(timeTypes[i]);

}

};

//初始化html

var renderHtml = function(){

var tabItemContainer = renderTabHtml(container);

renderTimeItemHtml(tabItemContainer);

};

//初始化时间类型切换事件

var initTabChooseEvent = function(){

$(‘[tabcode]’).click(function(){

var code = $(this).attr(‘tabcode’);

$(this).addClass(‘active’).siblings().removeClass(‘active’);

$(‘div[tabitemcode=’ + code + ‘]’).show().siblings().hide();

});

};

//清空该时间类型下的所有输入

var clearInput = function(timeType){

var timeContainer = getTimeItemContainer(timeType);

timeContainer.find(“input”).prop(“checked”, false);

};

//初始化时间选择类型互斥事件

var initMutualEvent = function(){

$(‘div[tabItemCode]’,container).each(function(){

var _this = $(this);

var timeType = $(this).attr(‘tabItemCode’);

$(‘input.’+typeSelectorClass,_this).on(‘change’,function(){

if($(this).prop(‘checked’)) {

( ′ i n p u t . ′ + t y p e S e l e c t o r C l a s s , t h i s ) . n o t ( ('input.'+typeSelectorClass,_this).not( (input.+typeSelectorClass,this).not((this)).prop(‘checked’,false);

if(timeType == ‘week’){

clearInput(‘day’);

}

if(timeType == ‘day’){

clearInput(‘week’);

}

}

});

});

};

//获得指定时间类型的值

var getTimeValue = function(timeType){

var checkedSelect = getTimeItemContainer(timeType).find(‘input.’+typeSelectorClass+‘:checked’);

var selectorType = checkedSelect.length>0 ? checkedSelect.attr(‘name’) : selectorTypeEnum.empty;

if(selectorType == selectorTypeEnum.period){

return getPeriodValue(timeType);

}else if(selectorType == selectorTypeEnum.assign){

return getAssignValue(timeType);

}else if(selectorType == selectorTypeEnum.empty){

return getEmptyValue(timeType);

}

};

//获得周期时间选择器的值

var getPeriodValue = function(timeType){

var timeContainer = getTimeItemContainer(timeType)

var start = $(‘input.’+startInputClass,timeContainer).val();

var end = $(‘input.’+endInputClass,timeContainer).val();

var distance = $(‘input.’+distanceInputClass,timeContainer).val();

var value = start || ‘’;

if(end && start){

value += (‘-’ + end)

}

if(distance){

value += (‘/’ + distance);

}

return value || ‘*’;

};

//获得指定时间选择器的值

var getAssignValue = function(timeType){

var timeContainer = getTimeItemContainer(timeType);

var selectedValues = [];

$(‘input.’+valueCheckBoxClass+‘:checked’,timeContainer).each(function () {

selectedValues.push($(this).attr(“value”));

});

return selectedValues.join(‘,’) || ‘0’;

};

//是否将日/周本地化

var translateWeek = function(weekTime,reverse){

if(!weekTime){

return weekTime;

}

var weekDays = weekTime.split(‘’);

for(var i = 0;i < weekDays.length;i++){

if(weekChar.indexOf(weekDays[i]) == -1){

if(reverse){

weekDays[i] = localWeekSequence.indexOf(weekDays[i]) + 1;

}else {

weekDays[i] = localWeekSequence[parseInt(weekDays[i]) - 1];

}

}

}

return weekDays.join(‘’);

}

做了那么多年开发,自学了很多门编程语言,我很明白学习资源对于学一门新语言的重要性,这些年也收藏了不少的Python干货,对我来说这些东西确实已经用不到了,但对于准备自学Python的人来说,或许它就是一个宝藏,可以给你省去很多的时间和精力。

别在网上瞎学了,我最近也做了一些资源的更新,只要你是我的粉丝,这期福利你都可拿走。

我先来介绍一下这些东西怎么用,文末抱走。


(1)Python所有方向的学习路线(新版)

这是我花了几天的时间去把Python所有方向的技术点做的整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。

最近我才对这些路线做了一下新的更新,知识体系更全面了。

在这里插入图片描述

(2)Python学习视频

包含了Python入门、爬虫、数据分析和web开发的学习视频,总共100多个,虽然没有那么全面,但是对于入门来说是没问题的,学完这些之后,你可以按照我上面的学习路线去网上找其他的知识资源进行进阶。

在这里插入图片描述

(3)100多个练手项目

我们在看视频学习的时候,不能光动眼动脑不动手,比较科学的学习方法是在理解之后运用它们,这时候练手项目就很适合了,只是里面的项目比较多,水平也是参差不齐,大家可以挑自己能做的项目去练练。

在这里插入图片描述

(4)200多本电子书

这些年我也收藏了很多电子书,大概200多本,有时候带实体书不方便的话,我就会去打开电子书看看,书籍可不一定比视频教程差,尤其是权威的技术书籍。

基本上主流的和经典的都有,这里我就不放图了,版权问题,个人看看是没有问题的。

(5)Python知识点汇总

知识点汇总有点像学习路线,但与学习路线不同的点就在于,知识点汇总更为细致,里面包含了对具体知识点的简单说明,而我们的学习路线则更为抽象和简单,只是为了方便大家只是某个领域你应该学习哪些技术栈。

在这里插入图片描述

(6)其他资料

还有其他的一些东西,比如说我自己出的Python入门图文类教程,没有电脑的时候用手机也可以学习知识,学会了理论之后再去敲代码实践验证,还有Python中文版的库资料、MySQL和HTML标签大全等等,这些都是可以送给粉丝们的东西。

在这里插入图片描述

这些都不是什么非常值钱的东西,但对于没有资源或者资源不是很好的学习者来说确实很不错,你要是用得到的话都可以直接抱走,关注过我的人都知道,这些都是可以拿到的。

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

需要这份系统化的资料的朋友,可以添加V获取:vip1024c (备注python)
img

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

在这里插入图片描述

这些都不是什么非常值钱的东西,但对于没有资源或者资源不是很好的学习者来说确实很不错,你要是用得到的话都可以直接抱走,关注过我的人都知道,这些都是可以拿到的。

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

需要这份系统化的资料的朋友,可以添加V获取:vip1024c (备注python)
[外链图片转存中…(img-YNsYN117-1713241234059)]

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

转载请注明出处或者链接地址:https://www.qianduange.cn//article/7288.html
标签
评论
发布的文章

exceljs

2024-05-11 10:05:00

Java研学-JSON与AJAX

2024-05-10 22:05:37

大家推荐的文章
会员中心 联系我 留言建议 回顶部
复制成功!