热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

运行js_JS基础|JavaScript运行环境

Shawn计划为非程序员人群提供游戏编程入门教程,开通新的公众号「少年奎特尔」从JavaScript编程语言起步,内容将会涉及CocosCreator、

Shawn 计划为非程序员人群提供游戏编程入门教程,开通新的公众号「少年奎特尔」从 Javascript 编程语言起步,内容将会涉及 Cocos Creator 、Scrash、Unity、Arduino、Raspberry pi、Cozmo 等游戏编程技术与可编程的电子设备,期待您的关注与加入。


前面我们介绍了 Javascript 的历史、组成部分,今天 Shawn 继续唠叨 Javascript 的运行环境。

1. 浏览器环境

8e59f6a61030c12330ee91efd730352d.png

开发 H5 游戏主要使用 Chrome 浏览器居多,在苹果 iOS 平台上有时也会用到苹果自家的 Safari 浏览器做原生调试。

浏览器是运行 H5 游戏的宿主,也是日常开发调试最常用的工具,特别是 Chrome 浏览器强大的开发调试能力,因此建议以 Chrome 浏览为默认浏览器。

2. Node.js

b489aa23ed4c03cde61e07d85f03e80e.png

使用 Node.js 除了开发服务器程序外,还被用于 Web 前端自动化,而且基于 Node.js 的第三方模块异常丰富,在 H5 游戏开发中 Shawn 经常会使用 Node.js 编写一些脚本工具,辅助日常的游戏开发工作。

同时 Shawn 发现 Node.js 的交互式命令行,是初学者学习 Javascript 语法、验证 Javascript 函数 API 的绝佳环境( Node.js 的交互式命令行提供有代码补全功能)。

3. Cocos Creator

6937e1cd650f4439ffe1bd15eb055182.png

Cocos Creator 跨越两大平台:原生环境 & HTML5

原生环境通常是指手机App桌面应用程序,比如:

  • iOS 的 ipa 包

  • Android 的 apk 包

  • Windows 应用程序

  • Mac 应用程序

引擎底层是由 c/c++ 编写的 cocos2d-x 框架,并整合 Javascript 引擎,同时提供一套 Javascript 与 c++ 的交互接口称之为 JSB(全称 Javascript Binding),引擎提供统一的 Javascript API 接口用于游戏内容的生产。

HTML5 环境通常是:

  • 桌面浏览器

  • 移动浏览器

  • 微信小游戏

在 H5 环境上,引擎使用浏览器提供的 WebGL 图形 API 进行2D\3D渲染,上层同样使用与原生接口相同的 API 进行游戏内容的开发。

对于游戏开发者来说,主要是使用引擎提供的 API 接口和可视化编辑器,组织管理游戏资源(图片、字体、声音、脚本...),因此我们编写一套游戏代码,可将其运行在电脑、手机等不同环境上。

4. 英文专业术语
  • chrome:n. 铬,铬合金;铬黄;谷歌浏览器

  • safari:n. 狩猎远征,游猎;长途旅行;苹果公司开发的浏览器

  • node:n. 节点

  • iOS:iphone操作系统(iphone operation system)

  • android:n. 机器人;谷歌公司开发的移动操作系统

  • binding:n. 装订;捆绑;v. 捆绑(bind的ing形式)

  • WebGL:全称 Web Graphics Library 是一种3D绘图协议,可以为HTML5 Canvas提供硬件3D加速渲染

  • API:Application Programming Interface,应用程序接口,是一些预先定义的函数,或指软件系统不同组成部分衔接的约定。


1e791ae532c9bbe6f11d2c07c6b01ac5.png

扫码关注「少年奎特尔

少年奎特尔」公众号专注青少年游戏编程启蒙,通过游戏编程了解计算机与软件开发的一般知识,学习计算机思维,并能将日常的数学 、英语、表达、创意等能力应用于编程实践之中,Shawn 的愿景是:

——让游戏编程成为教育的最强武器!

db88962d5687c8f2727a662a389a7140.png

  1. CreatorPrimer 30篇教程汇总

  2. KUOKUO的趣味教程 | 进击的小怪诞生(1)

  3. KUOKUO的趣味教程 | 小怪物的视野(2)

  4. KUOKUO的趣味教程 | 小怪物也思考(3)

  5. 大神驾到 |「大掌教」Cocos3D组件详解

  6. Creator MVVM方案—为人生节省时间!

  7. Creator2.x摄像跟随实现RPG地图

  8. CreatorPrimer|组件编码心得(上)

  9. CreatorPrimer|组件编码心得(中)

  10. CreatorPrimer|组件编码心得(下)

8aba6efa405ab1d23e0b9996c7de95d1.png




推荐阅读
  • 本文介绍了C#中生成随机数的三种方法,并分析了其中存在的问题。首先介绍了使用Random类生成随机数的默认方法,但在高并发情况下可能会出现重复的情况。接着通过循环生成了一系列随机数,进一步突显了这个问题。文章指出,随机数生成在任何编程语言中都是必备的功能,但Random类生成的随机数并不可靠。最后,提出了需要寻找其他可靠的随机数生成方法的建议。 ... [详细]
  • Android Studio Bumblebee | 2021.1.1(大黄蜂版本使用介绍)
    本文介绍了Android Studio Bumblebee | 2021.1.1(大黄蜂版本)的使用方法和相关知识,包括Gradle的介绍、设备管理器的配置、无线调试、新版本问题等内容。同时还提供了更新版本的下载地址和启动页面截图。 ... [详细]
  • 知识图谱——机器大脑中的知识库
    本文介绍了知识图谱在机器大脑中的应用,以及搜索引擎在知识图谱方面的发展。以谷歌知识图谱为例,说明了知识图谱的智能化特点。通过搜索引擎用户可以获取更加智能化的答案,如搜索关键词"Marie Curie",会得到居里夫人的详细信息以及与之相关的历史人物。知识图谱的出现引起了搜索引擎行业的变革,不仅美国的微软必应,中国的百度、搜狗等搜索引擎公司也纷纷推出了自己的知识图谱。 ... [详细]
  • 拥抱Android Design Support Library新变化(导航视图、悬浮ActionBar)
    转载请注明明桑AndroidAndroid5.0Loollipop作为Android最重要的版本之一,为我们带来了全新的界面风格和设计语言。看起来很受欢迎࿰ ... [详细]
  • 本文介绍了腾讯最近开源的BERT推理模型TurboTransformers,该模型在推理速度上比PyTorch快1~4倍。TurboTransformers采用了分层设计的思想,通过简化问题和加速开发,实现了快速推理能力。同时,文章还探讨了PyTorch在中间层延迟和深度神经网络中存在的问题,并提出了合并计算的解决方案。 ... [详细]
  • 本文介绍了前端人员必须知道的三个问题,即前端都做哪些事、前端都需要哪些技术,以及前端的发展阶段。初级阶段包括HTML、CSS、JavaScript和jQuery的基础知识。进阶阶段涵盖了面向对象编程、响应式设计、Ajax、HTML5等新兴技术。高级阶段包括架构基础、模块化开发、预编译和前沿规范等内容。此外,还介绍了一些后端服务,如Node.js。 ... [详细]
  • 小程序自动授权和手动接入的方式及操作步骤
    本文介绍了小程序支持的两种接入方式:自动授权和手动接入,并详细说明了它们的操作步骤。同时还介绍了如何在两种方式之间切换,以及手动接入后如何下载代码包和提交审核。 ... [详细]
  • 本文介绍了RxJava在Android开发中的广泛应用以及其在事件总线(Event Bus)实现中的使用方法。RxJava是一种基于观察者模式的异步java库,可以提高开发效率、降低维护成本。通过RxJava,开发者可以实现事件的异步处理和链式操作。对于已经具备RxJava基础的开发者来说,本文将详细介绍如何利用RxJava实现事件总线,并提供了使用建议。 ... [详细]
  • 本文介绍了如何在Azure应用服务实例上获取.NetCore 3.0+的支持。作者分享了自己在将代码升级为使用.NET Core 3.0时遇到的问题,并提供了解决方法。文章还介绍了在部署过程中使用Kudu构建的方法,并指出了可能出现的错误。此外,还介绍了开发者应用服务计划和免费产品应用服务计划在不同地区的运行情况。最后,文章指出了当前的.NET SDK不支持目标为.NET Core 3.0的问题,并提供了解决方案。 ... [详细]
  • 基于layUI的图片上传前预览功能的2种实现方式
    本文介绍了基于layUI的图片上传前预览功能的两种实现方式:一种是使用blob+FileReader,另一种是使用layUI自带的参数。通过选择文件后点击文件名,在页面中间弹窗内预览图片。其中,layUI自带的参数实现了图片预览功能。该功能依赖于layUI的上传模块,并使用了blob和FileReader来读取本地文件并获取图像的base64编码。点击文件名时会执行See()函数。摘要长度为169字。 ... [详细]
  • 本文介绍了使用AJAX的POST请求实现数据修改功能的方法。通过ajax-post技术,可以实现在输入某个id后,通过ajax技术调用post.jsp修改具有该id记录的姓名的值。文章还提到了AJAX的概念和作用,以及使用async参数和open()方法的注意事项。同时强调了不推荐使用async=false的情况,并解释了JavaScript等待服务器响应的机制。 ... [详细]
  • Android中高级面试必知必会,积累总结
    本文介绍了Android中高级面试的必知必会内容,并总结了相关经验。文章指出,如今的Android市场对开发人员的要求更高,需要更专业的人才。同时,文章还给出了针对Android岗位的职责和要求,并提供了简历突出的建议。 ... [详细]
  • 【Windows】实现微信双开或多开的方法及步骤详解
    本文介绍了在Windows系统下实现微信双开或多开的方法,通过安装微信电脑版、复制微信程序启动路径、修改文本文件为bat文件等步骤,实现同时登录两个或多个微信的效果。相比于使用虚拟机的方法,本方法更简单易行,适用于任何电脑,并且不会消耗过多系统资源。详细步骤和原理解释请参考本文内容。 ... [详细]
  • 《数据结构》学习笔记3——串匹配算法性能评估
    本文主要讨论串匹配算法的性能评估,包括模式匹配、字符种类数量、算法复杂度等内容。通过借助C++中的头文件和库,可以实现对串的匹配操作。其中蛮力算法的复杂度为O(m*n),通过随机取出长度为m的子串作为模式P,在文本T中进行匹配,统计平均复杂度。对于成功和失败的匹配分别进行测试,分析其平均复杂度。详情请参考相关学习资源。 ... [详细]
  • 本文介绍了通过ABAP开发往外网发邮件的需求,并提供了配置和代码整理的资料。其中包括了配置SAP邮件服务器的步骤和ABAP写发送邮件代码的过程。通过RZ10配置参数和icm/server_port_1的设定,可以实现向Sap User和外部邮件发送邮件的功能。希望对需要的开发人员有帮助。摘要长度:184字。 ... [详细]
author-avatar
手机用户2502859523
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有