网站重构之精简你的代码
N年前我的导师说,“写代码真的需要天赋。”那我们就从一段代码开始。
命题:取两个数中较大的一个
function GetMax(a,b){
var result=0;
if(a>b){
result=a;
}else{
result=b;
}
return result;
}
看完这段代码,我就想起了学生时代的老师在课堂上讲课的样子,教科书般的标准,毕业后怎么看这代码怎么难受,于是就产生了第二段代码。
function GetMax(a,b){
if(a>b)
return a;
return b;
}
这个看上去貌似舒服多了,但是我觉得它还长怎么办?人类的智慧总是被逼出来的,总会想出办法,于是产生了第三段代码。
function GetMax(a,b){
return a>b?a:b;
}
这三段代码的发展历程就好像小孩儿的成长历程,写代码就是要不断精进,找到一种感觉,有点说不清道不明,总之有一天,你会发现你入道了,然后会追求每一行代码都是perfect,这时候你写代码就正在发起一场革命。有的孩子们总是标榜我今天又写了几千行代码,这个例子充分说明不是代码写的行数越多就越牛B,呵呵。
现在广泛流传的Jquery库,我们要怎样用好这个框架呢,我来分享几个jquery常用的高性能代码吧:
1. 验证某个元素是否存在
$(selector).length
2. 使用jQuery来预加载图像
jQuery.preloadImages = function() {
for(var i = 0; i < arguments.length; i++) {
$("<img />").attr('src', arguments[i]);
}
};
//用法
$.preloadImages('image1.gif', '/path/to/image2.png', 'some/image3.jpg');
3. 包含了某个值文本的元素.
$("p.value:contains('thetextvalue')")
4. 把某个元素放在屏幕中间
jQuery.fn.center = function () {
this.css('position','absolute');
this.css('top', ( $(window).height() - this.height() ) / +$(window).scrollTop() + 'px');
this.css('left', ( $(window).width() - this.width() ) / 2+$(window).scrollLeft() + 'px');
return this;
}
//这样来使用上面的函数:
$(element).center();
5. 在jQuery中如何使用.siblings()来选择同辈元素
$('#nav li').click(function(){
$('#nav li').removeClass('active');
$(this).addClass('active');
});
//替代做法是
$('#nav li').click(function(){
$(this).addClass('active').siblings().removeClass('active');
});
以上代码抛砖引玉,希望大家能在精简代码的道路上可以早日入道,写出的每一句代码都变成高质量的,优雅的,完美的……
--IT-北北报
转载于:https://www.cnblogs.com/babyisun/p/3582607.html
网站重构之精简你的代码相关推荐
- Asp.Net与SEO – Web标准与网站重构
什么是Web标准与网站重构,相信绝大多数程序员都有所了解.我这里只简单介绍不做详细说明. Web标准把网页分为三部分:结构,表现和行为.也就是说Web标准也分成三大标准:结构化标准语言主要包括XHTM ...
- 重构html布局,网站重构|网页重构|浏览器兼容|div+css布局|psd转html|概念网络
什么是网站重构 网页重构就是把"没有采用Div+CSS布局的网站,大量使用HTML进行定位.布局,或者虽然已经采用Div+CSS,但是未遵循HTML结构化标准的站点"变成" ...
- 读WEB标准和网站重构后的一些感想
这是我以前写的一篇博客, 感觉比较有用,原帖离得较远,在这转一下........... 昨晚,读了<<WEB标准和网站重构>>这一篇文章后(其实是一个讲座的文件),感触还是比较 ...
- Web前端技术知识:为什么要进行网站重构呢?
很多网站因为在建站初没有做好策划工作,后期又在开发的时候外包给了技术欠缺的团队,因为疏忽管理,然后在在后期优化时很难达到效果.于是大部分人准备进行网站重构.Web前端工程师为何要进行网站重构呢?这个问 ...
- 2022长安杯的网站重构及部分题解
这里只对2022长安杯的网站重构过程进行记录 首先看检材一里的历史命令 这里只截取部分 从历史命令可以看出,他执行了很多次start_web.sh和npm run dev 且这个网站的服务就是用那几个 ...
- vue重构html css,使用vue重构资讯页面的实例代码解析
从我接手到将这个页面代码重构前,一直都还是使用angular1的代码去做的,需求来了也是用angular去实现:作为一个憧憬新技术的前端,怎么忍受得了现在还在使用这么有历史感的框架,所以,以前就一直在 ...
- 网站重构学习,附一份最简单网站重构小练习,可以最基础的入门,欢迎大家学习
先说Apache Listen端口号,如果80,那就是80端口访问 ServerName,有一下两种 ServerName localhost 这种可以通过网址www.app10.com这种访问,也能 ...
- 重构,改善既有代码的设计(理论篇)
文章目录 前言 重构是什么? 谈谈定义 何时重构? 常用重构手法 提炼函数(Extract Method) 以查询取代临时元素(Replace Temp with Query) 分解条件表达式(Dec ...
- 告诉你一种精简、优化代码的方式
来自:好好学java 相对于Java8之前的Java的相关操作简直是天差地别,Java8 的流式操作的出现,也很大程度上改变了开发者对于Java的繁琐的操作的印象,从此,Java也走向了函数式编程的道 ...
最新文章
- 影像组学视频学习笔记(24)-文献导读:了解88种降维、分类器组合、Li‘s have a solution and plan.
- [转载]在Eclipse CDT中编译含有多个main函数的项目
- Springboot-Vue-MybatisPlus 返回给前端的 Long类型数据失去精度怎么办 之 Long类型作为实体类的一个属性
- 学python买什么电脑-程序员,买了台破Apple电脑,用来学Python
- 程序员在35-40岁之后真的就是死胡同吗?
- simulink方框_4.4设计Simulink框图的界面
- select怎么设置默认值_20200817:详细说下数据倾斜怎么解决?
- java 的单态模式(只可以创建一个对象)
- 加载中_Spring Boot 2.2 中的延迟加载
- C语言中strstr函数
- HTML5期末大作业:家具家居网站设计——智能家居(10页) HTML+CSS+JavaScript 学生DW网页设计作业成品 web课程设计网页规划与设计 学生静态网页制作...
- PS批处理生成EXE格式
- 局域网内时间同步配置
- 最大最小次序统计量密度函数的推导
- Learn Git Branching 答案汇总
- 使用Vue+DataV+ECharts打造新冠肺炎疫情数据大屏(可动态刷新)
- Spring Boot-入门
- 11个值得珍藏的4K高清壁纸网站推荐
- pc端页面右侧滑动样式修改
- 在线教育系统、组卷、考试
热门文章
- mysql 5.7基本优化_mysql5.7优化
- python更新织梦网站_怎么让dedecms织梦网站首页自动更新
- mysql——数据库设计中int与varchar中的长度含义
- JavaWeb——servlet介绍
- 安装oracle12.1 32位客户端时,出现[INS-10102]未能初始化安装程序错误
- 高性能MMORPG服务端引擎设计之基本概念
- MFC 教程【1_MFC概述 】
- python登录接口测试_接口测试,基于Python
- python将列表转换成集合_python 将DataFrame转换为List
- Hive常见的存储格式的区别与应用场景