细说Cocos2d-JS——你必须知道的JavaScript

对于使用游戏引擎开发游戏而言,你选择何种语言并不重要,重要的是你对这个游戏引擎的理解和掌握,你对开发游戏的实践和感悟,毕竟一种游戏引擎常常支持很多语言开发,不同的项目使用的语言也可能很不一样。 ——有些人说

这个观点确实不无道理,但是,我依旧认为,无论是对于Cocos2d还是Unity3d抑或是其他的游戏引擎,无论你选择的是C++,C#,Lua还是JavaScript,在对游戏引擎深入研究之前或者之外,对你所选语言的研究显得尤为重要。这可能会给你带来质的提升。

一、JavaScript——想说爱你不简单

想必大家都知道Cocos2d游戏引擎支持三种语言开发,C++,Lua,JavaScript。从我个人的角度来讲,我为什么选择JavaScript,而不是老牌的C++和同样是脚本语言的Lua呢?原因有两个:

第一:虽然Cocos2d-JS平台很年轻,但是Cocos2d官方的态度貌似更加侧重对Cocos2d-JS平台的推广和支持,我觉得应该是以后官方的主要方向。而且JavaScript和老牌的C++对比来讲,提供了更多的新特性,如:热更新,对HTML游戏平台的支持等。

第二:个人认为JavaScript这门语言很有可能成为未来几年的“明星”。Unity3d主流语言选择是C#和JavaScript(定制版),而Cocos2d也支持JavaScript,而APICloud也主要使用JavaScript。从中可见,JavaScript还是很有发展的,特别是在跨平台和Hybrid APP的开发方面。

那,为什么说“想说爱你不简单”呢?不是脚本语言吗?看起来就比Java,C++之类的简单多了吧?

额,其实一开始我也这么认为的。但是随着你慢慢的深入研究,你就会发现。脚本语言只是语法规则上来看更加随意自然,如果要窥其精华,探其本质,还是要下一番苦功夫的。

二、JavaScript——应该如何爱上你

原本打算写一个系列的教程,专门讲一讲学习Cocos2d-JS所需要掌握的JavaScript基础知识。后来想想还是打消了这个念头。原因有二:

首先,关于JavaScript的教程和书籍有很多,而且都写的非常优秀,本不需要我再来赘言

二来,如果你想使用Cocos2d-JS平台来开发游戏,我推荐的是把JavaScript这门语言搞懂,彻底搞明白。而不是,只学基础语法,只学使用Cocos2d-JS急需的那部分知识。

如果,我把所有的JavaScript知识都讲一遍的话,一来没有那么多时间,二来与这个系列教程“细说Cocos2d-JS”的主旨想违背。如果以后我有机会的话,我会再开一个系列,专门讲讲JavaScript的奇妙。

三、JavaScript——学习建议和指导

虽然不能详细介绍JavaScript的全部知识,但是我这里给大家一个主要知识的提纲。至于具体内容,网上都有很多写的很好的博客,也有很多书籍。大家可以自行查找,当然了,我也会给一些推荐。

JavaScript中this的用法

JavaScript中匿名函数及闭包

JavaScript中call,apply,bind等用法

JavaScript中prototype及继承

JavaScript中变量作用域,作用域链等

推荐博客

JavaScript的变量作用域深入理解:http://www.jb51.net/article/20583.htm

JavaScript闭包 懂不懂由你反正我是懂了:http://www.jb51.net/article/28611.htm

JavaScript中的匿名函数及函数的闭包:http://www.cnblogs.com/rainman/archive/2009/05/04/1448899.html

详解JavaScript中的this:http://blog.jobbole.com/39305/

JavaScript 开发进阶:理解 JavaScript 作用域和作用域链:http://www.cnblogs.com/lhb25/archive/2011/09/06/javascript-scope-chain.html

js中bind、call、apply函数的用法:http://rangercyh.blog.51cto.com/1444712/1615809

JavaScript prototype:http://www.cnblogs.com/dolphinX/p/3286177.html

JavaScript中的原型和继承:http://kb.cnblogs.com/page/207063/

如果大家有任何疑问,欢迎留言讨论。当然,也可以给我发邮件([email protected]),这样我每天查看邮件的时候,会尽早给你回复。

版权声明:本文为博主原创文章,未经博主允许不得转载。

时间: 2024-10-24 22:11:08

细说Cocos2d-JS——你必须知道的JavaScript的相关文章

五个你必须知道的javascript和web debug技术

转:http://js8.in/2013/11/20/%E4%BA%94%E4%B8%AA%E4%BD%A0%E5%BF%85%E9%A1%BB%E7%9F%A5%E9%81%93%E7%9A%84javascript%E5%92%8Cweb-debug%E6%8A%80%E6%9C%AF/ 在前端开发中,调试技术是必不可少的技能,本文将介绍五种前端开发必备的调试技术. Weinre移动调试 DOM 断点 debugger断点 native方法hook 远程映射本地调试 Weinre 在移动上面

从零开始学习jQuery(剧场版) 你必须知道的javascript

原文:从零开始学习jQuery(剧场版) 你必须知道的javascript 一.摘要 本文是jQuery系列教程的剧场版, 即和jQuery这条主线无关, 主要介绍大家平时会忽略的一些javascript细节.  适合希望巩固javascript理论知识和基础知识的开发人员阅读.   二.前言 最近面试过一些人, 发现即使经验丰富的开发人员, 对于一些基础的理论和细节也常常会模糊. 写本文是因为就我自己而言第一次学习下面的内容时发现自己确实有所收获和感悟.  其实我们容易忽视的javascrip

《jQuery风暴》第2章 必须知道的JavaScript知识

第2章 必须知道的JavaScript知识 JavaScript是jQuery应用的基础,掌握JavaScript这门语言是使用jQuery的基础条件.本章不会全面细致的讲解JavaScript的全部, 而是讲解其精髓,这些知识可以提升大家的JavaScript内功.切忌,要修炼上乘的武功,必须要有深厚的内功基础,否则只可学到其招式而发挥不了功力.JavaScript实际上包括三部分: w   ECMAScript 描述了该语言的语法和基本对象. w   DOM 描述了处理网页内容的方法和接口.

Node.js新手必须知道的4个JavaScript概念

如果只需要知道一种编程语言就可以构建一个全栈的应用程序,是不是特别了不起?Ryan Dahl为了把这个想法成为现实,创造了node.js.Node.js是建立在Chrome强劲的V8 JavaScript引擎上的服务器端框架.虽然最初是用C++编写的,但是应用程序通过JavaScript运行. 这样一来,问题就解决了.一种语言就可以统治一切.而且,在整个应用程序中你只需要使用这一种语言.所以,我们需要深刻了解node.js.这就是本文的主题. 下面这四个基本概念是你想要掌握node.js所必需的

面向对象编程思想(前传)--你必须知道的javascript

什么是鸭子类型 javascript是一门典型的动态类型语言,也就弱类型语言.那什么是鸭子类型:[如果它走起路来像鸭子,叫起来也是鸭子,那么它就是鸭子] var 鸭子 = { 走路: function () { }, 咕咕咕: function () { } } var 鹦鹉 = { 走路: function () { }, 咕咕咕: function () { } } 这只鹦鹉同样有"走路"和"咕咕咕"的方法,那在js的世界里就可以把它当成鸭子.可以这样调用: v

面向对象编程思想(前传)--你必须知道的javascript(转载)

原文地址:http://www.cnblogs.com/zhaopei/p/6623460.html阅读目录 什么是鸭子类型 javascript的面向对象 封装 继承 多态 原型 this指向 call apply band js中的闭包 什么是高阶函数 在写面向对象编程思想-设计模式中的js部分的时候发现很多基础知识不了解的话,是很难真正理解和读懂js面向对象的代码.为此,在这里先快速补上.然后继续我们的面向对象编程思想-设计模式. 什么是鸭子类型 javascript是一门典型的动态类型语

《你必须知道的javascript(上)》- 2.this与对象原型

1.1 为什么使用this 随着你的使用模式越来越复杂,显式传递上下文对象会让代码变得越来越混乱,使用this则不会这样.当我们介绍对象和原型时,你就会明白函数可以自动引用合适的上下文对象有多重要. 1.2 关于误解 首先需要消除一些关于this的错误认识. 1.2.1 指向自身 先来看个例子: function foo(num) { console.log("foo: " + num); // 记录foo被调用的次数,这里this指向window this.count++; } fo

前端开发必须知道的JS之闭包及应用

本文讲的是函数闭包,不涉及对象闭包(如用with实现).如果你觉得我说的有偏差,欢迎拍砖,欢迎指教. 在前端开发必须知道的JS之原型和继承一文中说过下面写篇闭包,加之最近越来越发现需要加强我的闭包应用能力,所以此文不能再拖了.本文讲的是函数闭包,不涉及对象闭包(如用with实现).如果你觉得我说的有偏差,欢迎拍砖,欢迎指教. 一. 闭包的理论 首先必须了解以下几个概念: 执行环境 每调用一个函数时(执行函数时),系统会为该函数创建一个封闭的局部的运行环境,即该函数的执行环境.函数总是在自己的执行

jQuery_review之使用jQuery的Ajax必须知道的,serialize、param方法以及全局函数

在项目中可能会碰到这样的几个问题: 第一个问题,我们需要实现一个基于ajax的异步程序,我们也相当的熟悉ajax中是可以通过{name:name,address:address}这种方式来进行传递参数的.但是,当任务下达的那一刻,我们发现前端的form表单非常的庞大,庞大的我没有耐心去一个一个的拼字符串. 第二个问题,我们需要将一个充满的checkbox的用户调查表传递给后台,额,难道需要我们写一个过滤器,然后通过each进行遍历,然后拼成这样的一个参数表么?如果你对jQuery的选择器比较了解