`
18211103738
  • 浏览: 82317 次
  • 性别: Icon_minigender_1
社区版块
存档分类
最新评论

JS开发中的几个彰显水准的技巧

阅读更多

1.使用requestAnimationFrame

JavaScript创建动画时使用requestAnimationFrame帧动画,它很类似于setTimeOut函数,并且当标签页失去焦点时,它就不再运行

 一般用法:

function render(){
	//TODO
	requestAnimationFrame(render);
}
render();

 启动/停止的用法之一:

//启动/停止的方法:
var requestId;

function loop() {
	...
	// do stuff
	...
	requestId = window.requestAnimationFrame(loop, canvas);
}

function start() {
	if (!requestId) {
		loop();
	}
}

function stop() {
	if (requestId) {
		window.cancelRequestAnimationFrame(requestId);
		requestId = undefined;
	}
}

 

2.使用while循环

我们经常使用倒序循环:

for(var i=0; i< array.length; i++){
	//Do Something
}

使用while循环效率更高:

var i = array.length;
while(i--) {
  //Do Something
}

 

3.禁用选中

当canvas占据了整个屏幕,我们想在Canvas控件中禁用选中,可是有如下代码:

// 禁用鼠标选中DOM元素
document.onselectstart = function() {
  return false;
};

 

4.定义回调

我们经常这样设置回调函数:

$("#id").click(function() {
  // 回调函数
  // 返回false在JQuery中会阻止消息的传递和默认行为的放生
  return false;
});

    或者:

$("#id").click(myFunction);
function myFunction(event) {
  //Do Something
  return false;
}

 我们应尽量像如下方式设置回调函数,这样不仅可以轻易将函数从事件上解除,而且可以避免污染全局变量空间,同时增加代码的可维护性:

$("#id").click(callbacks.myFunction);
//所有的回调函数都在callbacks对象中
var callbacks = {
	myFunction:function(event) {
		//Do Something
		return false;
	}
}
// 解除某个函数的绑定
$("#someid").unbind('click', callbacks.myFunction);

 

5.链式三元运算

我们经常这样做:

var number = a > 5 ? 200 : 38;

 其实我们还可以这样做:

var number =
	a < 5 ? 200 :
	a < 7 ? 38 :
	a < 11 ? 15 :
	a < 15 ? 49 :
	64;
//比使用when效率更高
//when a >=15

 

分享到:
评论

相关推荐

    基于javaScript开发的控制台操作小技巧+非常适合小白入门

    基于javaScript开发的控制台操作小技巧+非常适合小白入门 基于javaScript开发的控制台操作小技巧+非常适合小白入门 基于javaScript开发的控制台操作小技巧+非常适合小白入门 基于javaScript开发的控制台操作小...

    Node.js硬实战 115个核心技巧.pdf

    以上只是《Node.js硬实战 115个核心技巧》中部分知识点的概述,全书内容更为详实,覆盖了Node.js开发的各个方面,无论你是初学者还是有经验的开发者,都能从中受益匪浅,提升自己的Node.js实战技能。

    JavaScript设计模式与开发实践.pdf

    本书《JavaScript设计模式与开发实践》是JavaScript语言的设计模式和开发实践的指南,旨在帮助初、中、高级Web前端开发人员和想往架构师晋级的中高级程序员,掌握JavaScript设计模式和开发实践的知识。本书共分为三...

    three.js开发指南 pdf

    1. **three.js简介**:three.js是一个开源的JavaScript库,基于WebGL,用于在浏览器中呈现3D图形。它为开发者提供了丰富的API和工具,以实现交互式的3D内容。 2. **基本概念**:书中会讲解3D坐标系、摄像机、场景、...

    Three.js开发指南pdf 最新版

    《Three.js开发指南》是针对WebGL库Three.js的一本详尽教程,旨在帮助开发者深入理解和运用这个强大的3D图形库。Three.js是JavaScript的一个开源项目,它为Web浏览器提供了简单易用的接口,用于创建复杂的3D场景、...

    three.js开发必备(内附开发指南和three.js多版本)

    《three.js开发必备》资源包含了三个关键组成部分:THREE.JS开发指南的PDF文档和多个版本的three.min.js库。这个资源对于想要深入理解和实践three.js的开发者来说是极其宝贵的。 首先,我们来探讨THREE.JS开发指南...

    Three.js开发指南电子版

    Three.js开发指南电子版,让你更好的学习理解threejs,Three.js开发指南电子版,让你更好的学习理解threejs

    Vue.js前端开发 PDF

    Vue.js是目前非常流行的前端开发框架之一,被誉为前端三大框架之一,另外两个是React和Angular。Vue.js的设计理念是简洁、易用且高效,它旨在通过最小的学习曲线提供强大的功能,使得开发者能够快速构建交互式的用户...

    Javascript 开发应用技巧大全

    JavaScript,简称为JS,是一种广泛应用于网页和网络应用开发的脚本语言,尤其在客户端运行时,它使得网页更具交互性和动态性。由于其非编译特性,JS代码可以直接嵌入HTML文档中,由浏览器解释执行,这为开发者提供了...

    js开发象棋游戏脚本源码文件

    这款"js开发象棋游戏脚本源码文件"提供了完整的实现,让你能够直接运行游戏,同时也为学习和研究JavaScript编程技巧提供了宝贵的资源。 首先,让我们关注一下这个项目的组成部分。在压缩包中,有四个主要文件夹或...

    这个项目收集移动端开发所需要的一些资源与小技巧

    在移动端开发领域,JavaScript开发和混合移动开发是两个至关重要的概念。这个名为"mobileTech-master"的项目显然是一个专注于提供移动端开发资源和技巧的集合,旨在帮助开发者提升他们的技能和效率。下面,我们将...

    three.js开发指南pdf

    three.js开发指南源码: 首部全面讲解Three.js开发的实用指南,循序渐进讲解Three.js的各种功能,通过大量交互示例,深入探索使用开源的Three.js库创建绚丽三维图形的实用方法和技巧。 在过去的两年里,浏览器变得...

    两个比较好用的Eclipse中javascript插件jsEditor jsEclipse

    总的来说,jsEditor和jsEclipse都是Eclipse中不可或缺的JavaScript开发工具,它们通过丰富的特性和服务,帮助开发者提高生产力,降低出错概率,使JavaScript编程更加轻松愉快。无论你是新手还是经验丰富的开发者,都...

    Node.js开发实战详解.pdf

    《Node.js开发实战详解》是一本深度探讨Node.js开发技术的专业书籍,旨在为读者提供一个全面、详实的学习路径,引领他们深入理解并熟练运用Node.js进行web开发。本书不仅适合初学者,也对有一定经验的开发者有很高的...

    Javascript中最常用的55个经典技巧

    Javascript中最常用的55个经典技巧。最常见的js操作代码。

    JavaScript开发案例参考源代码-有10几个哦

    JavaScript开发案例参考源代码-有10几个哦 JavaScript开发案例参考源代码-有10几个哦 JavaScript开发案例参考源代码-有10几个哦 汇率计算器 init 自定义播放器 汇率计算器 exchange rate Modal menu slider 猜单词 ...

    koa 与 node.js 开发实战完整版

    它扩充了JavaScript的应用范围,使JavaScript也能像其他语言一样操作各种系统资源,因此,前端工程化开发的大量工具都开始运行在Node.js环境中。由于Node.js采用事件驱动、非阻塞I/O和异步输出来提升性能,因此大量I...

Global site tag (gtag.js) - Google Analytics