首先说一下我吧,本人以前在大学是学电气工程及其自动化专业的,后来出来工作一年后一次偶然的机会接触了关于网页设计的东西,感觉很有兴趣便开始自学,自学半年后找了一份前端的工作,刚开始感觉学到的东西很多,有很强的目标性知道要学js,html,css.能感觉到自己在进步。可是现在在前端工作快半年了,感觉在目前的这家公司没有一丁点进步的空间了,反而觉得在下滑。。。这家公司他很少涉及到H5和css3的一些新知识,用的还都是很原始的东西。而且现在感觉做一位前端好多东西得学。。不再是当初单纯的学学js,css,html,感觉还得要会网络通信,还得懂后台语言。。。突然觉得没有方向感了不知道怎样着手。。。感觉思绪好乱不知道怎样去进一步提高了。大牛们你们都是怎样经历过来的,可不可以给我指点一二。我想知道前端的各个阶段应当具备哪些技能哪些知识;如果说要学习有关于网络数据交换那得了解学习哪方面的知识,这方面有什么好的资料吗?而且是不是还得懂数据库操作的一些知识?至于后端语言学习哪一门更好一些是Java?c++?还是PHP?node.js?还是说别的什么后端语言。还有一些框架要知道哪些,我目前就对JQ比较熟悉一些,像angular.js,Bootstrap就不怎么了解了,现在突然感觉要学的太多太杂不知道该怎么一步一步的进行。。。
最后还想请教大牛们该怎样优化自己的代码现在用jq那样写代码一多感觉自己都要吐了。
var dwid=dwid ? dwid : '';
var data={
"dwid":dwid
}
var brx=JSON.parse(localStorage.getItem('brxx'));
var url={
"dwbk_cx":"/service?wdService=dwbk_cxSpt"
}
axs(url.dwbk_cx,data,bklm_fn,'post');
var href_bk=window.location.href;
var oHref=getParams(href_bk);
function bklm_fn(data){
console.log(data)
if(data.msg=='10004'){
var obj=data.data,str='<li class="nav-item"><a href="index.html">首页</a></li>',str_more='',child_str='';
if(obj.length>=8){
var obj_length = 8;
}else{
var obj_length = obj.length;
}
for(var i=0;i<obj_length;i++){
child_str='';
if(obj[i].bkbm=='ZXFU'){
console.log('fgf')
$('.conts p:lt(3) a').attr('href',obj[i].bkurl+'?dwbkid='+obj[i].dwbkid+'&bk=bk')
}
if(oHref.hasOwnProperty('dwbkid')&&oHref.dwbkid==obj[i].dwbkid){
var ms='<div style="margin: 1px 0px 4px 0px;"><p style="padding: 6px 4px;border-bottom: 1px dashed #ccc;line-height: 150%;font-size: 14px;color: #666;"><span style="color:#D22E71">栏目说明:</span>'+obj[i].ms+'</p></div>';
$(ms).insertBefore('.ss');
}
var cHild = obj[i].childList;
console.log(cHild.length)
if(cHild.length>0){
for(var j=0;j<cHild.length;j++){
child_str+='<li class="nav-item"><a href="'+cHild[j].bkurl+'?dwbkid='+cHild[j].dwbkid+'&bk=bk">'+cHild[j].mc+'</a></li>';
}
child_str='<ul class="child">'+child_str+'</ul>';
}
str+='<li class="nav-item"><a href="'+obj[i].bkurl+'?dwbkid='+obj[i].dwbkid+'&bk=bk">'+obj[i].mc+'</a>'+child_str+'</li>';
}
感受一下吧,我自己都觉得好乱。。大牛们有什么好的方法让代码优雅起来!
而且我觉用js拼装成字符串再在页面打印出来感觉好低级移植性又差。。。虽然知道有这样的问题不知道怎么可以解决。。。
希望大神们能给我指点迷津,在下不胜感激!!
电气工程及其自动化专业,我是电子信息工程技术专业^_^。
说一下我的经历,或许对你有一定的启发和帮助。
首先,我也是自学的程序设计,当然在学校的时候还是会学一些基础的编程相关的,比如汇编,C语言,还有硬件相关的编程。
我也是在一个偶然的机会接触到的真正意义上的编程(个人这么认为,在之前一直在控制台输出结果,很觉得枯燥无味,感觉没啥挑战)。那是一次参加比赛的准备,老师要写一个上位机通讯的界面,他打算用VB来写,他问我会不会。我当然不会。
但是我下来就到网上了解了一下,一发不可收拾,我这才知道原来写程序不仅仅是在控制台里玩玩而已。当然,我没有深入去了解VB,因为那时候微软推出的是C#,于是我是从学C#开始的。
因为C#涉及到一个完整的体系,.NET,WF,WPF,WCF,当时这些我都认真的练习过,当然当时只是没有目标的瞎玩,那时候经常去的是图书馆,从图书馆借很多厚厚的红书(也有黑的)回来,拼命的在电脑上敲,那时候仿佛完全沉浸在其中了。
在中途受到过几次打击。一是电脑被偷两次,使得我必须重新把敲过的代码,重新再敲一遍。二是一次去面试(带有培训性质的面试),三个还是两个面试官轮番轰炸,炸得我垂头丧气,出来之后一个培训的人就给你各种安慰(相信很多人都遇到过)。当然,这都没有阻止我继续往这条道上走下去。
接下来轮到找工作,我用Siverlight(汗,刚刚名字都快忘记了)制作了一个相册模块(其实不是很完整,但是从网上找了很多美女作为相册内容!!!),背着电脑就去公司面试了(注意,不是等通知,而是直接到公司)。他们让我第二天来笔试(没有面试,貌似他们没有打印或者正在忙),但是从谈话中透露出要做JavaScript方面的题。偶滴神,不知道是不是第一次听到这个名字,只记得当时在弄ASP.NET的时候,复制粘贴过一小段脚本(大家懂的,ASP.NET给人的感觉就是拖拖控件完事的)。于是乎,跑到网吧,下载了一本电子书,回到宾馆啃完睡觉,第二天去笔试。笔试结果65分,刚刚及格。其实,我很感谢当时面试我的人(目前在阿里的,很厉害的)。就这样,我就真正走上了这条不归路。
工作的同时就是学习,我学习能力应该算强的那种,很多都能立马会用。一周之后就开始接触项目(不是一般的修改bug开始),可见公司当时是缺人的。由于我能力很次的,所以当时是经理坐在我后面“指导”编程的(其实是他没事,就喜欢做在别人背后)。过了一阵子之后,他就不坐在我身后了,做到了另一个新人的身后。说真的,还是非常感谢我的第一家公司,毕竟他给了我一段让我快速成长的经历。
一年半的样子,离开第一家公司,来到第二家公司。刚开始的时候主要是会用,不过已经在开始接触进去而已的源码了,来到第二家公司没有安排什么具体项目,都是调研类的,当时在考虑搭建一个底层的前端框架给其他部门使用。所以,给自己的时间很多,那段时间可以说是自身能力进阶的阶段。已经开始接触底层一些的js语法,html5方面的知识。
不过很快,也一年的时间就离开了那家公司,到第三家创业公司,负责前端。开始编写自己的框架,将自己学到的前端知识(主要是前端的,因为自从工作之后主要接触前端方面的)系统化。其实在第二家公司的时候,已经尝试着造轮子,根据jqmobi,jquery mobile写了一个移动框架,不知道当时总经理把我拉入总经办是不是因为这个(话说我都不知道总经办是干啥的)。这一阶段主要是用,而非学,当然也有深化,加深理解。
第三家公司后来倒闭了(没到一年),出来找了第四份工作,目前也提出了辞职。第四份工作主要给了自己机会尝试自己写的框架,也就是自己的能力在经过实际项目的考验。
到目前为止,工作快6个年头,主要从事前端(其实我给个人定的目标是架构师)。因为已经提出了辞职,所以才有这些时间来逛segmentfault,在上面回答问题,来写这个答案。
刚刚说的是我,下面来说说你,我只能通过你的代码来简单说一下,有不对的地方还请谅解。