`
javaichiban
  • 浏览: 2026 次
  • 性别: Icon_minigender_1
  • 来自: 北京
文章分类
社区版块
存档分类
最新评论

超级小巧,可在J2ME手机上流畅运行的JavaScript引擎

阅读更多
RockScript -- 可以在J2ME手机上流畅运行的JavaScript引擎

试用
  已在Nokia低端S40手机中测试过。
  打开程序后即可从javascript例程列表中选择一个来显示源文件或直接执行。
  如需测试自己编写的javascript源码,只要将编写好的js文件加入scripts.zip并重新打JAR包即可。

优点
  体积超级小巧,引擎核心在混淆压缩后仅25K
  功能强大,实现了ECMA规范中绝大部分的语言特性
  性能优异,占用内存少,可在低端J2ME手机中流畅运行
  兼容性强,只要支持CLDC1.0/MIDP2.0的J2ME手机都可以运行(少量改动即可兼容MIDP1.0)
  可以轻易的集成在其它软件系统中,可以定制全局对象
  可扩展性强,可以轻易的添加新的本地方法或对象来扩展功能,如加入DOM API来支持DHTML

可用于
  3G时代的手机浏览器,使其真正支持客户端的DHTML和AJAX
  Widget引擎
  WAP浏览器中的WMLScript解释器
  游戏脚本引擎,特别是三引号和字符串内嵌表达式语法的加入特别适合编写有大量对话的游戏脚本
  商业逻辑扩展(DSL),可从服务器更新运算逻辑而不仅仅是数据
  更多,仅受限于您的想象力...

标准ECMA特性
  所有运算符
    一元运算符 !, +, -
    算术运算符 +, -, *, /, %, **
    自增自减运算符 ++, -- (前置/后置)
    赋值运算符 =, +=, -=, *=, /=, %=, **=, &=, |=, ^=, <<=, >>=, >>>=
    逻辑运算符 &&, ||
      支持JavaScript中的特殊用法,如以下代码:
        foo || foo = function() { println("Test!") }
        foo && foo()
    关系运算符 ==, ===, !=, !==, <, <=, >, >=
    位运算符 ~, &, |, ^, <<, >>, >>>
    三元运算符 ? :
    逗号运算符 ,
    其它运算符 in, delete, typeof, instanceof
  所有控制语句
    if ... [else ...]
    while ...
    do ... while
    for (...; ...; ...) ...
    for (... in ...) ...
    switch (...) { case ... : default : ... }
    with (...) ...
    return [...]
    throw ...
    try ... catch ... finally
  对象和数组
  真正的原型对象继承机制
  使用JSON语法创建对象和数组
  所有三种函数创建方式
    使用function关键字声明
    表达式中的函数直接量,如foo = function(x, y) { return x + y }
    用Function构造函数动态创建,如foo = new Function("x", "y", "return x + y")
  自定义构造函数创建对象
  支持eval函数,即可以执行字符串中的JavaScript代码
  使用函数直接量实现的闭包(参见例程中的closure.js和closure1.js)
  全局对象提供以下本地构造函数和属性(可以用例程中的dumpgo.js来查看所有内置属性)
    Object
      hasOwnProperty/toString
    Array
      join/shift/unshift/sort/reverse/push/pop/concat/slice
    Function
      apply/call
    String
      valueOf/charAt/charCodeAt/split/substring/indexOf/lastIndexOf
    Number
      valueOf
    Date
      getTime/setTime
    Error
      toString
    Math
      random
    print/println/alert
    eval
    es: 用来解析字符串中的内嵌表达式如: "My name is $my.name"
    parseInt
  字符串中可以使用\uxxxx来表示任意Unicode字符
  行尾分号可省略
  定义字符串可混用单/双引号


扩展特性(语法糖)
  支持乘方运算符**
  支持使用三引号""" ... """定义大段保持原样输出的字符串(即保留换行)。特别适合定义大段HTML代码,或对话等
  switch语句中case后面可以使用表达式
  支持字符串内嵌表达式(此特性可关闭以保持兼容性)
  提供es函数用来自动解析字符串中的内嵌表达式

目前不支持的ECMA语言特性
  浮点数(主要是性能方面的考虑,在下一版考虑加入可配置的定点数支持)
  正则表达式(因J2ME平台的限制)

作者联系方式
  Email:  rocks@cnjm.net

分享到:
评论

相关推荐

    J2ME手机游戏开发引擎的分析与设计

    引擎应能在各种J2ME支持的设备上稳定运行,提供跨平台的兼容性。 3.1.2 基本功能划分 包括图形渲染、音频处理、物理模拟、输入处理、资源管理等多个模块,以满足不同类型游戏的需求。 3.1.3 用户使用流程 开发者...

    j2me游戏引擎详解

    它们利用低级API如MIDP(Mobile Information Device Profile)的Canvas类来实现高效绘制,确保游戏在不同设备上流畅运行。 2. **物理模拟**:引擎可能集成物理模拟库,如Box2D或JBox2D,用于处理碰撞检测、重力和...

    j2me手机浏览器/j2me手机浏览器

    在2000年代初期,J2ME是许多非智能手机上实现互联网浏览的主要技术,其中“j2me手机浏览器”就是这样一个应用。这个应用允许用户在他们的手机上访问网页,尽管其功能和性能可能与现代智能手机上的高级浏览器相比有限...

    J2ME 手机程序开发

    3. **MIDlet**:MIDlet是J2ME中的核心应用程序类,它是运行在Java虚拟机上的一个可执行单元。MIDlet生命周期包括初始化、显示、暂停、恢复和终止几个阶段。开发者需要实现MIDlet接口,并覆盖其方法来管理应用程序的...

    一款 J2ME 的物理引擎

    3. **优化性能**:针对J2ME平台的特性,DyMiX_basic_0.1可能采用了特定的算法和技术来优化性能,减少CPU和内存的消耗,确保在低性能设备上的流畅运行。 4. **简单易用**:为了方便开发者集成,这个引擎可能提供了...

    超级玛丽的代码j2me版

    《超级玛丽的代码j2me版》是一款专为初级编程学习者设计的项目,它基于Java ME(J2ME)平台实现,可以帮助学习者深入了解移动设备上的游戏开发。J2ME,全称Java 2 Micro Edition,是Java平台的一个子集,主要应用于...

    j2me手机游戏案例精编电子教程

    《J2ME手机游戏案例精编电子教程》是一份深入探讨Java 2 Micro Edition (J2ME)在手机游戏开发中的应用的宝贵资源。J2ME是Java平台的一个子集,专为嵌入式设备,如早期的智能手机和平板电脑设计,它提供了开发移动...

    J2ME手机电话本

    在J2ME平台上开发应用程序,可以实现丰富的功能,如游戏、通信应用、信息管理等。本文将深入探讨如何在NetBeans集成开发环境中利用J2ME实现一个手机电话本功能。 首先,我们需要了解J2ME的基础架构。J2ME由配置...

    j2me 手机动画编辑器

    由于J2ME的目标平台通常是内存和处理能力有限的设备,因此这类编辑器通常注重效率和轻量化,以确保生成的动画能够在各种不同的手机硬件上流畅运行。 在J2ME中,动画通常通过更新显示的图像序列来实现,每帧图像被...

    J2ME手机游戏开发毕业论文

    这篇毕业论文深入探讨了J2ME在手机游戏开发中的应用,揭示了该技术的关键特性、开发流程以及面临的挑战。 **一、J2ME基础** J2ME由配置和 profiles 组成,配置定义了最小的Java运行时环境,而profiles则针对特定...

    J2ME手机扑克牌游戏

    《J2ME手机扑克牌游戏》是一款基于Java 2 Micro Edition (J2ME)平台开发的移动设备应用程序,主要用于在手机上实现扑克牌游戏的娱乐功能。本文将深入探讨J2ME技术、手机编程的基本原理以及扑克牌游戏的实现细节。 ...

    J2ME手机游戏

    但相比现代游戏引擎,J2ME在图形和动画处理上较为有限。 6. **音频支持** J2ME的MIDP提供了MIDI和波形声音的支持,允许开发者添加背景音乐和音效。但由于设备限制,音频处理相对简单,可能无法实现复杂的音频效果...

    j2me手机高级编程

    《J2ME手机高级编程》涉及的是Java 2 Micro Edition(J2ME)在移动设备上的高级应用开发,尤其关注无线通信、游戏开发、电子地图浏览、播放器实现、持久化存储、移动商务应用以及XML模型的应用。这些主题涵盖了移动...

    《J2ME手机游戏开发技术详解》

    《J2ME手机游戏开发技术详解》《J2ME手机游戏开发技术详解》《J2ME手机游戏开发技术详解》《J2ME手机游戏开发技术详解》《J2ME手机游戏开发技术详解》《J2ME手机游戏开发技术详解》《J2ME手机游戏开发技术详解》...

    J2ME手机游戏编程入门

    J2ME为移动设备提供了丰富的应用程序开发环境,尤其是在手机游戏领域,它曾经是开发手机游戏的主流技术之一。 在"J2ME手机游戏编程入门"这个主题中,我们主要会学习以下几个核心知识点: 1. **J2ME架构**:J2ME由...

    j2me超级玛丽 手机游戏

    3. **移动设备适配**:由于不同设备的硬件差异,J2ME游戏必须考虑到屏幕大小、内存限制和处理器性能,确保游戏可以在各种设备上流畅运行。 4. **经典游戏重制**:将像超级玛丽这样的经典游戏移植到移动平台,开发者...

Global site tag (gtag.js) - Google Analytics