早就听说网上有人仅仅用60行JavaScript代码写出了一个俄罗斯方块游戏,最近看了看,今天在这篇文章里面我把我做的分析整理一下(主要是以注释的形式)。 我用C写一个功能基本齐全的俄罗斯方块的话,大约需要1000行代码的样子。所以60行乍一看还是很让人吃惊的。 但是读懂了代码之后发现其实整个程序并没有使用什么神秘的技术,只不过是利用一些工具或者JavaScript本身的技巧大大简化了代码。 总结起来主要是以下三点 ...
var originObj = { name: "小明", array:["666","777","888"], object:{ name:"lgq", prop:["good","beautiful","cool"], obj:{O age:"18", sex:"boy" } }}var targetObj = {}; /*** 浅克隆*/function clone(origin,target){ var target = target || {};//target若不定义,默认为空{} for(var prop ...
/* //复习 var obj= new Number(2); alert(Number.MIN_VALUE);var num = new Number(22e3); alert(num); alert(isFinite(num));//判断是否超出了规定的范围var person={fname:"John",lname:"Doe",age:25}; var txt=""; for (x in person){txt=txt + person[x];}alert(txt); ------------------------------------------正则表达式(regular expression) 创建方式: 1.使用new运算符 var reg = new RegExp("box"); alert(reg);//ret...
一、JavaScript简介(1)、用法:(1)、head里面 //head里面主要放函数(2)、body里面 (在body内最为严谨)(3)、</html>之后 //程序上来要执行的部分 (2)、3个常用对话框alert()警告对话框,作用是弹出一个警告对话框。 //先弹出对话框,再执行。confirm()确定对话框,作用是弹出一个可供选择的确定对话框,点击确定之后,它返回true,点击取消返回flase,可用变量来接受。prompt()作用是...
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>数组操作</title> </head> <body> <script type="text/javascript"> //定义数组var arry = [0,1,2,3,5,6,7,8];//获取数组长度 arr.lengthconsole.log(arry.length);//给数组末尾添加元素 arry.push(123,89,23);可添加多个 console.log(arry.push(123,1,896));//给数组末尾删除元素,返回的是数组末尾的值console.log(arry.pop());//给数组开头添加元素,可以...
技术很多,例子很多,只好慢慢学,慢慢实践!!现在学的这本书是【JavaScript实战----JavaScript、jQuery、HTML5、Node.js实例大全】JavaScript、jQuery、HTML5、Node.js实例大全-读书笔记13.2 照片加载与定位 根据功能设计,可以先写好 HTML 结构基础,再配好 CSS 做出大致效果,最后用 JavaScript加上各种动作。首先请看 HTML 代码结构。 3.2.1 HTML 代码 CSS代码保存到 eg3.css 文件中,JavaScript代码保存到 eg3.js 文件中,...
1.数据存储的方式 1.字面量 2.变量 3.数组项 4.对象成员2.各自的性能特点 1.访问字面量和局部变量的速度最快,访问数组项和对象成员相对较慢 2.由于局部变量在作用域链的起始位置,因此访问局部变量比访问跨作用域变量更快。变量在作用域链的位置越深,访问的时间就越长。 3.避免使用with和try-catch语句,因为他会改变作用域链,会影响性能。 4.嵌套的对象成员会明显影响性能。 5.属性和方法在原型链上...
<script type="text/javascript">//演示对象的方法。var str = "abcd";//document.write(str.bold());//alert(str.bold());var arr = ["abc","nba","zz","haha"];document.write(arr.join(", ")+"<br/>");arr.sort();document.write(arr.join(", ")); </script><script type="text/javascript" src="arraytool.js"></script><script type="text/javascript" src="stringtool.js"></script><script type="text/javascript">//原型的...
事件处理程序事件处理程序即响应某个事件的函数事件处理程序以 “on” 开头如“onclick”,“onload” HTML事件处理程序某个元素支持的每种事件都可以使用一个与响应的事件处理程序同名的HTML特性来指定这个特性的值应该是能够执行的script代码如:<input type="button" value="click me" onclick="alert(‘clicked‘)"/>此外也可以直接调用在文档其它部分定义的函数作为事件处理程序所执行的代码如:<input type="button" value="...
javascript: <script> function loadDoc(file,async=true){ if(window.XMLHttpRequest){ // code for IE7+, Firefox, Chrome, Opera, Safari xmlhttp=new XMLHttpRequest(); }else{ // code for IE6, IE5 xmlhttp=new ActiveXObject("Microsoft.XMLHTTP"); } if(async === true){ xmlhttp.onreadystatechange = function(){if(xmlhttp.readyState < 4){// 加载中}else if (xmlhttp.readyState == 4 && xmlhttp.status == 200){/...
问题描述:使用iframe的情况下,在子框架中,使用如下形式的跳转:<a href="javascript:;" onclick="parent.location.href=‘login.php‘;"> 退出</a>在IE浏览器下,点击后,会在退出的情况下,再打开一个页面,URL显示为 javascript:; 的情况出现,也就是说 a标签的 javascript:; 并未生效!这是一个很奇怪的现象,在谷歌等现代浏览器中并不存在该问题。 最后猜测可能是由于 a标签的href属性 在IE下的解析是先将href的值传递给父...
js无缝滚动效果几乎在任何网页上都能看到它的身影,有的可能是使用插件,其实使用原始的javascript比较简单。主要的是使用js位置知识。详细1.innerHTML:设置或获取元素的html标签2.scrollLeft:设置或获取位于对象左边界和窗口中目前可见内容的最左端之间的距3.offsetWidth:设置或获取指定标签的宽度4.setInterval():设置方法定时启动5.clearInterval();清除定时器效果图:先睹为快:demo<!DOCTYPE html><html lang="en"><head><met...
回调模式上一篇,对JavaScript函数进行了大体的介绍,这一篇对一些在工作中经常遇到的情况进行扩展。在工作中,我们经常遇到很多需求,比如现在有一个需求:一栋10层的大楼,当我们在坐电梯时,电梯每上一层,每层的电梯显示屏上即时显示电梯当前所在的楼层。这样我们可能不到1s,就想到了解决方案,只要电梯每上一层,把每一层的电梯显示屏数字 +1 ,代码核心如下: <PRE style=‘margin: 0em; width: 100%; font-family: consolas...
现在的游戏开发变得越来越复杂,需要制作各种炫丽的效果,还要制作各种基于 2D 或者 3D 的场景。为了节省游戏开发者的时间,让开发者集中精力在游戏的创新上,出现了许许多多的游戏引擎。而现在为了实现跨平台,HTML5 和 JavaScript 成功为了游戏开发者必备的利器,特别是移动端的开发者,必须要能很好的掌握 HTML5 和 JavaScript。现在这么多的游戏引擎,各有各的优点和缺点,为了帮助开发者们找到属于自己的那款游戏开发引擎,我...
<SCRIPT language="JavaScript"> function DrawImage(ImgD,FitWidth,FitHeight){ var image=new Image(); image.src=ImgD.src; if(image.width>0 && image.height>0){ if(image.width/image.height>= FitWidth/FitHeight){ if(image.width>FitWidth){ ImgD.width=FitWidth; ImgD.height=(image.height*FitWidth)/image.width; } else{ ImgD.width=image.width; ImgD.height=image.height; } } else{ if(image.heigh...