经典格斗游戏《街头霸王》的Javascript实现
继 《天机》 之后,这次又山寨了个名为《街斗霸主》的经典格式游戏《街头霸王》的模仿版Demo,花了几个月的业余时间写了这么个东西,算是对目前的技术学习的一种练习吧。其实这种练习的结果不是很重要,主要是体会其中的过程,虽然大部分的时间是在痛苦中渡过,但也是有很多收获的,同时也暴露出很多技术方面的不足,也为以后的学习明确了一些目标。
技术方面因为考虑到大部分IE用户(而且是非IE9),所以没有用HTM
http://cyqdata.cn/cnblogs/article-detail-36196
javascript面向对象学习笔记(一)——继承
最近在学习html5,玩了下canvas,发现js中很多的东西都不太记得了。翻了下笔记后发现还是去图书馆逛逛把,到借阅区找了我一直想看的《javascript design patterns》好好研读了个下午,读罢,顿时有种醍醐顿开的感觉(夸张了..),发现之前对javascript OO方面的认识真的很浅,读了前几章关于OO的介绍后感觉思路清晰很多了,对于js一些基本概念的认识也加深了很多。同时
http://cyqdata.cn/cnblogs/article-detail-36192
JavaScript实现IE6以下版本提示更新.
Navigator
获取浏览器的名称
var browser=navigator.appName
获取浏览器的版本
var b_version=navigator.appVersion
进行对IE5.5 and IE6.0判断
if(b_version.indexOf("MSIE 6.0") != -1 || b_version.indexOf("MSIE 5.5") !
http://cyqdata.cn/cnblogs/article-detail-36173
让JavaScript中计时器setTimeout/setInterval的回调方法支持参数传递
1. 背景
在JavaScript中,我们经常要用到Timer,也就是setTimeout或者setInterval这两个方法。例如:
var t1 = setTimeout(function() {
//TODO: add your logic here
}, 1000);
同时,我们也经常听到有人报怨说里面的这个回调方法不支持参数传递。有时候,我们想要在里面的function里面用到外
http://cyqdata.cn/cnblogs/article-detail-36168
javascript 学习笔记(八)javascript对象
昨天看了些有关javascript对象方面的文章,以下是自己的一些学习心得及体会,希望同大家共同讨论!
1、javascript中的内置对象
javascript中除了本身的内置对象,如以下我们所熟悉的对象:
Array
Date
Math
String
RegExp
……
各个对象都有自己的属性及方法,比如我们经常使用属性及方法
属性:stringObject.l
http://cyqdata.cn/cnblogs/article-detail-36141
javascript学习笔记(七)利用javascript来创建和存储cookie
今天把javascript如何用来创建及存储cookie复习了一下,其中的一点体会拿出来和大家讨论,恳请高手指点一二。
首先看一下基础知识:
1、什么是cookie
cookie 是存储于访问者的计算机中的变量。每当同一台计算机通过浏览器请求某个页面时,就会发送这个 cookie。你可以使用 JavaScript 来创建和取回 cookie 的值
2、有关cookie的例子:
名字 cookie
http://cyqdata.cn/cnblogs/article-detail-36097
九个让人难以置信的HTML5和JavaScript实验
Google的 Chrome实验室 收集了很多让人难以置信的基于 HTML5 Canvas 和 JavaScript 的实验项目,里面的例子都很独特,让人惊叹。我从未想过结合 HTML 和 JavaScript 能实现这么强大的效果。今天,本文与大家分享其中9个很棒的例子,为了有更好的效果,建议在Chrome浏览器中浏览。
Untangle拖动蓝点,让所有线都不相交,看看你多久能解开
http://cyqdata.cn/cnblogs/article-detail-36073
JavaScript中链式调用之研习
方法链一般适合对一个对象进行连续操作(集中在一句代码)。一定程度上可以减少代码量,缺点是它占用了函数的返回值。
一、对象链:方法体内返回对象实例自身(this)
function ClassA(){
this.prop1 = null;
this.prop2 = null;
this.prop3 = null;
}
ClassA.prototype = {
method1 : func
http://cyqdata.cn/cnblogs/article-detail-36037
JavaScript中清空数组的两种方式
方式1,length赋值为0
这种方式很有意思,其它语言如Java,其数组的length是只读的,不能被赋值。如
int[] ary = {1,2,3,4};
ary.length = 0;
Java中会报错,编译通不过。而JS中则可以,且将数组清空了,
var ary = [1,2,3,4];
ary.length = 0;
console.log(ary); // 输出 [],空数组,
http://cyqdata.cn/cnblogs/article-detail-36002
字符串连接类(Javascript)
最近在看一同事写的代码时,有一个字符串用了一堆“+”号,看了半天没明天到底会输出什么样的内容,
就想到用字符串连接的类,把以前的方法写成了类的方式,方便调用 ,
支持实例调用 和静态调用参数可以是单独的字符串,或者json的格式,或者类似参数数组的方式,见下面示例
/*
* @author: uedsky
 
http://cyqdata.cn/cnblogs/article-detail-35742
[原创]祝贺《JavaScript 秘密花园》中文翻译被官方正式采纳 - setInterval 纠错
祝贺《JavaScript 秘密花园》中文翻译被官方正式采纳,大家以后可以随时通过官方网站浏览:http://bonsaiden.github.com/JavaScript-Garden/zh/
由于这是一个不断更新的文档,如果有新的更新或者纠错我会及时更新中文翻译。
这篇文章的起因是有网友提的 Issue: https://github.com/BonsaiDen/JavaScript
http://cyqdata.cn/cnblogs/article-detail-35729
写了10年Javascript未必全了解的连续赋值运算
很喜欢 蔡蔡 的这个标题,实际蔡蔡已经分析过了,这里借用了。或许有点标题党的意思。看完就知了。
一、引子
var a = {n:1};
a.x = a = {n:2};
alert(a.x); // --> undefined
这是蔡蔡在看 jQuery源码 时发现这种写法的。以上第二句 a.x = a = {n:2} 是一个连续赋值表达式。这个连续赋值表达式在引擎内部究竟发生了什么
http://cyqdata.cn/cnblogs/article-detail-35532
[翻译]JavaScript秘密花园 - Type Casting,undefined,eval,setTimeout,Auto Semicolon Insertion - 全部完成PDF打包下载
JavaScript Garden - 原文
JavaScript Garden - 中文翻译
PDF打包下载
类型转换
JavaScript 是弱类型语言,所以会在任何可能的情况下应用强制类型转换。
// 下面的比较结果是:truenew Number(10) == 10; // Number.toString() 返回的字符串被再次转换为数字10 == '10';  
http://cyqdata.cn/cnblogs/article-detail-35503
[翻译]JavaScript秘密花园 - Array, Array Constructor, for in loop, typeof, instanceOf
JavaScript Garden - 原文
JavaScript Garden - 中文翻译
数组遍历与属性
虽然在 JavaScript 中数组是是对象,但是没有好的理由去使用 `for in` 循环 遍历数组。
相反,有一些好的理由不去使用 for in 遍历数组。
注意: JavaScript 中数组不是 关联数组。
JavaScript 中只有对象 来管理键值的对应关系。但是关
http://cyqdata.cn/cnblogs/article-detail-35436
JavaScript子类用Object.getPrototypeOf去调用父类方法
每个function有个prototype属性,称为原型。每个对象也有个原型,IE9/Firefox/Safari/Chrome/Opera 中可以通过__proto__来访问,IE6/7/8中没有提供相关接口。
function Person(){
this.method1 = function(){}
}
Person.prototype.method2 = function(){}
f
http://cyqdata.cn/cnblogs/article-detail-35350
[翻译]JavaScript秘密花园 - scope, namespace, constructor, equality and comparisons
JavaScript Garden - 原文
JavaScript Garden - 中文翻译
作用域与命名空间
尽管 JavaScript 支持一对花括号创建的代码段,但是并不支持块级作用域;
而仅仅支持 函数作用域。
function test() { // 一个作用域 for(var i = 0; i < 10; i++) { // 不是一个作用域&nb
http://cyqdata.cn/cnblogs/article-detail-35326
SquishIt——JavaScript、CSS压缩器
一段事件木有更新博客了,主要是这段时间工作略忙,业余时间又在帮个朋友做个小东西,于是也就没去接触新东西。今天上网的时候一个老同事(我刚出来工作时的师傅^_^)发来个网址,说是有好东西叫我看,于是看了一下,果然发现了好东西,也解决了之前我在思考的一个小问题。是一个C#.NET的组件来的,由于资料是E文的,按照惯例似懂非懂地看完然后写点测试DEMO。这篇文章记录一
http://cyqdata.cn/cnblogs/article-detail-35241
如何在JavaScript中处理大量数据
在之前的文章中,我们讲了浏览器对于JavaScript代码执行的限制和基于计时器的伪线程机制。这里,我们再看看如何在JavaScript中处理大量数据。
在几年之前,开发人员不会去考虑在服务端之外处理大量的数据。现在这种观念已经改变了,很多Ajax程序需要在客户端和服务器端传输大量的数据。此外,更新DOM节点的处理在浏览器端来看也是一个很耗时的工作。而且,需要对这些信息进行分析处理的时候也很可能导
http://cyqdata.cn/cnblogs/article-detail-35195
JavaScript 小游戏 - 颜色识别,是男人就玩到100分!(附源码)
女朋友手机上的一个游戏,尝试着用JavaScript 把它实现了,UI 粗糙了点。。。
自己玩了很多遍,终于破百了,这证明了什么?哈哈,你懂的。大家也试试啊~
分数:0
开始!
颜色识别小游戏
游戏开始后,下面的线框中会相继出现一些表示颜色的英文单词,当其意思与字体颜色一致时,请按向“左”方向键,否则请
http://cyqdata.cn/cnblogs/article-detail-35193
JavaScript中的隐式类型转换
如果把通过函数或方法调用,明确的将某种类型转换成另一种类型称为显示转换 ,相反则称为隐式类型转换 。google和维基百科中没有找到“显示类型转换”,“隐式类型转换”的字眼。暂且这么称呼。
一、 运算中存在的隐式类型转换 1, “+”运算符
var a = 11, b = '22';
var c = a + b;
这里
http://cyqdata.cn/cnblogs/article-detail-35090
