JS中的逻辑哲学
1、幻灯片播放。
有重用功能的代码要封入一个函数内,尽量减少调用出口(一般传入的参数为索引值),以便调用;
计数器放在最终调用的函数那里,index++;
明确那部分函数执行什么功能,将代码块只放在相关的函数内,避免调用函数时执行不必要的语句;
原生JS模仿fade in() 函数原理为改变透明度,setInterval(迭代递增透明度,n)。间隔时间与递增值决定渐变速度,部分代码如下:
timer = setInterval(function(){
alpha += 2;
alpha > 100 && (alpha = 100);
aImg[index].style.opacity = alpha / 100;
alpha == 100 && clearInterval(timer);
},40)
2.网页计算器。
eval() 函数可计算某个字符串,并执行其中的的 JavaScript 代码。不需要判断是作何运算,全部交给eval()处理;
巧妙运用正则匹配;
3.强大的三元操作符。
对于if()else()之类的语句,尽可能用三元操作符代替,用法如下:
object.style.background = object.background == "green" ? "red" : "green" ;
object.className == "current" ? 执行语句一 : (执行语句二 ,执行语句三,执行语句四。。。) ;
非常适合模拟连续单击的事件触发,以及条件判断;
三元操作符的执行语句用括号括起来,以逗号分隔,可执行多条语句
4.无中生有的 var s = false。
此类对于特殊状态下的条件判断非常好用,辅以 “s || 语句一,s = false; ” 改变 s 状态执行 语句一 ,执行完毕 复位 s 状态,构成封闭逻辑;
妙用无穷啊
5.addEventListener().
使用这个方法可以实现事件绑定的嵌套;
从功能上讲,可以是是事件绑定的条件嵌套,也可通过 var s = false; 来实现;
JS中的逻辑哲学的更多相关文章
- js中的逻辑与(&&)与逻辑或(||)
var foo = 1; var bar = 0; var tar = false; var baz = 2; 一.js中的逻辑与(&&) 1.当第一个数为true时,返回第二个数: ...
- 讲讲js中的逻辑与(&&)以及逻辑或(||)
前几天看到一个函数,百思不得其解,今天早上醒来看了本js的书,正好讲到操作符的用法,给大家分享下js中的&&,||,和我们用的其他的编程语言还是有点区别的. 直接上那个函数的代码: f ...
- js中的逻辑与(&&)和逻辑或(||)
之前有一个同事去面试,面试过程中碰到这样一个问题: 在js中写出如下的答案 : var a = 2; var b = 3; var andflag = a && b ; var orf ...
- js中的逻辑与(&&)和逻辑或(||)(转载)
var a = 2; var b = 3; var andflag = a && b ; var orflag = a || b; 问andflag 和orflag 分别是什么? 起初 ...
- js中的原型哲学思想
https://segmentfault.com/a/1190000005824449 记得当年初试前端的时候,学习JavaScript过程中,原型问题一直让我疑惑许久,那时候捧着那本著名的红皮书,看 ...
- js中的逻辑与和逻辑或随笔
逻辑与:&&,都真才真 逻辑或:||,一真都真 逻辑运算两侧不都是布尔值时,会隐式转换为布尔值转换规则:转换为true:非0数字(包含infinity).非空字符串转换为false:0 ...
- js中的逻辑或和逻辑与
a=''||'abc'; //返回什么? 'abc' a=1||2; // ...
- 研究分析JS中的三种逻辑语句
JS中的三种逻辑语句:顺序.分支和循环语句. 一.顺序语句 代码规范如下:1. <script type="text/javascript"> var a = 10; ...
- JS中 逻辑或 || 逻辑与 && 的使用方法总结
JS中 逻辑或 || 逻辑与 && 的使用方法总结 //1.在if判断中 //if(1==1 || 2==3){}//->两个条件中只要有一个条件为真,整体就为真 "或 ...
随机推荐
- telnet如何操作Memcached缓存系统?
4.(1)telnet操作Memcached 许多语言都实现了连接memcached的客户端,其中以Perl.PHP为主.仅仅memcached网站上列出的语言就有:• Perl • PHP • Py ...
- sql 随机数
select FLOOR(rand()*16) 就是随机得到0到15之间的一个整数 select CEILING(rand()*15) 就是随机得到1到15之间的一个整数 FLOOR()为地板函数,取 ...
- oc内存管理总结(一)
**内存管理 问题 1.什么是ios内存管理? 就是在对象不再被使用的时候,把它即时的从内存中清除掉 2.为什么要使用内存管理? 1.严格的内存管理,能够是我们的应用程在性能上有很大的提高 2.如果忽 ...
- $digest already in progress
最近在写项目时经常遇到一个小问题,在上下文外改变视图,通常来说我们需要apply()便可以实现,问题是加了apply()后控制台报错:$digest already in progress:随后我把a ...
- YUV422 YUV420 Planar \ Semi-Planar \ Interleaved
关于yuv 格式 YUV 格式通常有两大类:打包(packed)格式和平面(planar)格式.前者将 YUV 分量存放在同一个数组中,通常是几个相邻的像素组成一个宏像素(macro-pixel);而 ...
- 七夕节(hd1215)干嘛今天做这题T_T
七夕节 Problem Description 七夕节那天,月老来到数字王国,他在城门上贴了一张告示,并且和数字王国的人们说:"你们想知道你们的另一半是谁吗?那就按照告示上的方法去找吧!&q ...
- C语言--关键字、标识(zhi)符、注释
一.关键字 1. 关键字 是C语言中提供的有特殊含义的符号,同时也叫做保留字,在C语言中关键字一共有32个,它们分别被赋予了特殊的含义.如:main.int.struct等等. 2. 关键字的特征 1 ...
- android 手势滑动
1.概述, 两次都是画曲线统计图用到手势滑动.左滑动,右滑动曲线图翻页 2.直接上代码 3.注: 第一次使用的时候是implement了 OnTouchListener 接口,是在画图布局上layou ...
- chart
var pieChart = { width: 600, height: 400, series: [], unit: "kg", chartCanvas: null, selec ...
- 加密芯片ALPU
加密芯片ALPU 纽文微电子(上海)有限公司 n 公司简介 NEOWINE是一家半导体开发公司,2002年6月成立于韩国,于2011年在中国设法人; 研发总部位于韩国京畿道,并在上海.深圳设办事处 ...