如何将 Ruby 编译为 Javascript? [关闭]

2024-04-23

我正在研究一段逻辑,我想在服务器和浏览器中表达它。类似于验证表单,其中基于已输入的内容,元素之间必须存在某些逻辑关系。

所以...如果我可以编写一次逻辑并以某种方式最终同时使用 Ruby 和 Javascript,那么我可以只编写一次逻辑,而不必担心确保用不同语言编写的两段代码具有相同的功能行为。

显然,我不需要在 Ruby 中重现所有内容,一种简化可能是移植一个通用库,例如函数式 JavaScript http://osteele.com/sources/javascript/functional/到鲁比。

有人有 RubyJS 的经验吗?谁能给我指出一个使用 RubyJS 的现有项目吗? 提前致谢...


据我所知,Opal http://opalrb.com/是目前最好的 Ruby 到 JS 转换器/编译器。Here http://opalrb.com/try/#code:class%20Person%0A%20%20attr_accessor%20%3Afirst%2C%20%3Alast%2C%20%3Agender%0A%20%20def%20initialize(first_name%2C%20last_name%2C%20g)%0A%20%20%20%20%40first%20%3D%20first_name%0A%20%20%20%20%40last%20%3D%20last_name%0A%20%20%20%20raise%20%22Nope%22%20if%20(g%20!%3D%20%3Am%20%26%26%20g%20!%3D%20%3Af)%0A%20%20%20%20%40gender%20%3D%20g%0A%20%20end%0A%20%20def%20parent_type%0A%20%20%20%20if%20gender%20%3D%3D%20%3Am%0A%20%20%20%20%20%20%22father%22%0A%20%20%20%20elsif%20gender%20%3D%3D%20%3Af%0A%20%20%20%20%20%20%22mother%22%0A%20%20%20%20end%0A%20%20end%0A%20%20def%20full_name%0A%20%20%20%20%22%23%7Bfirst%7D%20%23%7Blast%7D%22%0A%20%20end%0Aend%0A%0Ame%20%3D%20Person.new(%22Bob%22%2C%20%22Smith%22%2C%20%3Am)%0Ap1%20%3D%20Person.new(%22John%22%2C%20%22Smith%22%2C%20%3Am)%0Ap2%20%3D%20Person.new(%22Sue%22%2C%20%22Smith%22%2C%20%3Af)%0A%0Aputs%20%22My%20name%20is%20%23%7Bme.full_name%7D!%22%0A%0Aputs%20%22My%20%23%7Bp1.parent_type%7D%20is%20%23%7Bp1.first%7D!%22%0Aputs%20%22My%20%23%7Bp2.parent_type%7D%20is%20%23%7Bp2.first%7D!%22你可以看到它的实际效果。

它并不完美,但它在大多数情况下都可以工作,并且与旧项目(例如RubyJS https://github.com/superchris/rubyjs,蛋白石仍在积极开发中。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何将 Ruby 编译为 Javascript? [关闭] 的相关文章

  • 停止所有 JavaScript 执行

    是否有一个相当于 php die 函数的 javascript 可以停止所有 javascript 包括将来的 ajax 请求回调 超时等 运行 注意 我无法在调试器中使用断点 因为 bug 存在于 ie8 中 并且调试器会阻止您在断点处向
  • 选择容器中的最后一个单词

    我只是想知道是否有办法选择 DIV 中的最后一个单词 我认为没有任何明显的方法可以做到这一点 那么有什么解决方法吗 我不介意使用 CSS 或 Javascript 来实现这一点 提前致谢 div or no div 它归结为基本的字符串操作
  • HTML5 - 创建画布视口

    我有一个 2D 数组 宽 30 下 20 然而 视口仅绘制横向 15 和向下 10 的内容 我最初有一个这样的游戏 我一直在努力实现这样的目标 这是我的小提琴 http jsfiddle net sTr7q http jsfiddle ne
  • 静态方法而不是原型方法Javascript

    当在类中调用实例函数时 对象的每个实例都会获得自己的函数副本 但在原型方法和静态方法中不会创建副本 它们属于类 所以如果它们都没有创建其函数的副本 那么为什么如果我们不想复制 可以简单地使用原型方法 那么我们是否有静态函数 我有点困惑 如果
  • 使用带有代码分割的汇总时,有什么方法可以保留包的目录结构吗?

    Context 给定这样的项目结构 src a module js b module js util js 两者都在哪里module js文件导入util js 使用以下配置 export default experimentalCodeS
  • 如何通知 AngularJS 表单已由 jQuery 外部填写?

    我在 AngularJS 中有一个页面 其中有一个包含一些字段的表单 加载该页面后 我想要一个书签 单击该书签可根据配置文件中的数据填充字段 正在使用一个 JS 文件 该文件使用 jquery 来填充表单中的数据 当我做 id val ab
  • onClick 在 p 标签上无法正常工作

    我想为每个绑定一个点击事件 p 但它似乎不能正常工作 当我运行脚本时 我立即收到三个警报 我只想在单击三个中的任何一个时获得它们 p p s 谁能告诉我我做错了什么 编辑 抱歉 这就是它的样子 HTML 应该是这样的 p p class s
  • escape()、encodeURI()、encodeURIComponent() 之间的区别

    在 JavaScript 中 它们之间有什么区别 escape unescape encodeuri decodeuri encodeURIComponent decodeURIComponent 对于有视觉头脑的人来说 这里有一个表格显示
  • JavaScript 动态变量名称[重复]

    这个问题在这里已经有答案了 好吧 我想在用户单击时创建变量 每次单击都会添加一个新变量 我目前正在使用 jquery 和 javascript 我无法在服务器端执行此操作 这必须在浏览器中完成 newCount document getEl
  • 条件表达式在包内是否被破坏?

    考虑以下片段 requires designide rtl vcl IF RTLVersion lt 19 0 E2026 Constant expression expected IF CompilerVersion 22 0 same
  • JavaScript:发送 POST,重定向到响应

    我有一个带有 onclick 的图像 当单击事件触发时 我想发送 HTTP POST 并将 window location 重定向到 POST 的响应 我怎样才能做到这一点 只需将按钮绑定到表单元素的提交方法 重定向就会自然发生
  • 玩笑测试因 refs 和 Form 失败

    我有一个搜索栏组件 如下所示 render const onChangeTextInput this props return
  • 窗口位置替换 - 超时帮助? JavaScript问题

    我曾尝试找到一种方法 在我的代码中添加超时 然后再重定向您 我用谷歌搜索并找到了一些帮助 但他们都没有达到我的预期 这会提示用户出生年份并计算年龄 大致 如果用户未满18岁 则带他们去迪士尼乐园 否则允许进入 函数年龄按钮 var AskD
  • 从字符串中提取所有链接

    我有一个 javascript 变量 其中包含页面的 HTML 源代码 不是当前页面的源代码 我需要从该变量中提取所有链接 关于什么是最好的方法的任何线索 是否可以为变量中的 HTML 创建一个 DOM 然后遍历它 我不知道这是否是推荐的方
  • JQuery 从 Div 中抓取文本减去子元素[重复]

    这个问题在这里已经有答案了 有没有一种简单的方法可以从这个 div 中获取文本而不获取任何子元素 div strong Title Text Unwanted strong This is the text I need div 我知道我可
  • 为什么 JavaScript 原型属性在新对象上未定义?

    我对 JavaScript 原型概念还很陌生 考虑以下代码 var x function func x prototype log function console log 1 var b new x 据我了解 b log 应该返回 1 因
  • javascript 中的独立括号[重复]

    这个问题在这里已经有答案了 可能的重复 JavaScript 为什么使用匿名函数包装器 https stackoverflow com questions 1643321 javascript why the anonymous funct
  • NestJs:如何使 Body 输入形状与实体的 DTO 不同?

    我的照片和标签对象有 DTO 如下所示 export class PhotoDto readonly title string readonly file string readonly tags TagDto export class T
  • Object.assign 方法不绑定“this”

    我正在尝试绑定this变量到一个新对象 function Parent sub component constructors this components node function this name jordan subcompone
  • 使用 javascript 在字符串中查找电子邮件地址

    我想做的是从字符串中提取电子邮件地址SomeName First email protected cdn cgi l email protection 这是我已经尝试过的代码 var stringToSearchIn SomeName Fi

随机推荐

  • Numpy排列浮点不一致

    我有一个相当简单的 numpy 任务 创建一个长数组 每个元素递增 0 001 当然 np arange就是答案 我将自己限制为默认精度 float64 对结果的一个简单检查是数组的每 1000 个元素应该具有相同的小数部分 我通过绘图检查
  • 如何优化这个 CUDA 内核

    我已经分析了我的模型 似乎该内核约占我总运行时间的 2 3 我一直在寻找优化它的建议 代码如下 global void calcFlux double concs double fluxes double dt int idx blockI
  • 如何在 Linux (Red Hat/CentOS) 上更新到特定 R 版本,并保留以前的版本?

    也许更准确的标题是 如何在 Linux Red Hat CentOS 上从就地 EPEL R 安装切换到并行 特定于版本 R 安装 一个 可能是典型的 在 Linux 上升级 R 的故事 History 在过去的某个时刻 我使用由 RHEL
  • IE 在模态中失去对输入字段的焦点

    我有一个相当复杂的网络应用程序 我已将其压缩为以下两个 HTML 页面 但问题仍然存在 问题 在 IE 8 和 9 中 厚盒模式 iframe 的输入字段在一秒 或更短时间 后失去焦点 它仅在模态中发生 如果您自行加载页面 焦点不会丢失 我
  • 如何为 JavaScript 生成的文本框附加 onclick 事件?

    我有一个表行 其中包含一个文本框 它有一个显示 JavaScript 日历的 onclick 我正在使用文本框向表中添加行 但我不知道如何将 onclick 事件附加到 JavaScript 生成的文本框
  • MyFaces 中的内存泄漏

    编辑 您可以在下面的评论中找到的解决方案假设更改 JSF 实现从 MyFaces 到 太阳的莫贾拉 Hi 我在 MyFaces 2 0 0 上遇到了非常烦人的问题 更准确地说 我也在 2 0 1 和 2 0 2 上检查过它 问题仍然存在 我
  • 如何使用 RDFLib 解析大数据集?

    我正在尝试使用 RDFLib 3 0 解析几个大图 显然它处理第一个图并在第二个图上死掉 MemoryError 看起来 MySQL 不再支持作为存储 您能建议一种以某种方式解析这些图的方法吗 Traceback most recent c
  • 在 Mac OS X 上使用 Python 生成新的非阻塞进程

    我找到了一些文章甚至堆栈 overflow针对这个主题的问题 但我仍然做不到 我想要做的是从 python 打开一个 firefox 实例 那么python应用程序应该继续关注自己的事情并忽略firefox进程 我能够使用以下方法在 Win
  • 如何在R中使用grep匹配表达式的开头和结尾

    我试图用 grep 命令匹配表达式的开头和结尾 但我无法做到这一点 例如 考虑以下表达式 filenames lt c S2abc 6h S2abc 4h S2abc 0h S4abc 6h S2xyz 6h 我想找到所有以 S2 开头并以
  • 如果特定文件发生更改,如何自动收到警告?

    我有一个 php 项目 当我从另一个存储库中提取并且composer lock 文件发生更改时 我应该运行composer phar install dev git 如何自动警告我 询问我是否要运行这个命令 我想某种挂钩可以解决这个问题 但
  • 通过将参数传递给 url 在谷歌地图上绘制圆圈

    我想在给定的谷歌地图网址上画一个圆圈作为叠加层 这是没有使用谷歌地图 API 的情况 因此 我想知道是否可以通过仅将某些参数传递给地图网址来实现 我正在使用的网址是 https maps google com maps saddr M5J
  • JAX-RS:是否有用于根元素、列表的一部分、Web 服务中的参数的 json 序列化器

    目前我正在设计一个 RESTful API 并使用 JAX RS 作为后端 许多响应具有以下简单形式 someList item1 item2 itemn 重要的是数组的字段名称 客户端需要它 EmberJS 数据 我尝试使用标准 Resp
  • 如何将 N 个本地最顶层提交转换为 MQ 补丁?

    我想将我的最后一次提交安排为 MQ 补丁 所有提交都是本地的 从不推送到服务器 但并非所有本地提交都会被转换 假设我进行了 10 次提交 从未推送 现在我希望将最后 5 次提交转换为补丁 我该怎么做 简洁版本 hg qimport r 5
  • Android:从触摸事件获取原始位图数据

    Is there a possibility to get an array bitmap with the raw data of the touched spots on an Android touch display See ill
  • Flutter 从 Future 方法返回 bool 类型

    这个问题与this https stackoverflow com questions 52477468 flutter futurebool vs bool type但解释对我的用例并没有多大帮助 我有一个 Future 类型的方法 它返
  • java中的动态方法调度

    class A int a 10 public void show System out println Show A a class B extends A public int b 20 public void show System
  • SQL Server 使用参数导致结果缓慢

    我有一个选择一些数据的查询 我在其中传递了一些参数 DECLARE FromAccDocNo INT 1 ToAccDocNo INT 999999999 FromDate CHAR 10 1900 01 01 ToDate CHAR 10
  • 如何设置像“YYYYMM”这样的 Postgresql 默认值日期戳?

    作为标题 如何将表的列设置为当前年份和月份的默认值 格式为 YYYYMM 例如今天的 200905 请记住 日期的格式与存储无关 如果您认为日期很重要stored在这种格式中 您需要定义自定义数据类型或将其存储为字符串 然后你可以使用组合e
  • 将 csv 列放入数组中

    我有一个带有列标题的 csv 描述 库存 mfgid 以及我不需要的其他一些标题 我需要从数组中的列标题 stock 和 mfgid 获取数据 我正在使用 fgetcsv 但它将整行放入数组中的独占键中 在 stackoverflow 上找
  • 如何将 Ruby 编译为 Javascript? [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 我正在研究一段逻辑 我想在服务器和浏览器中表达它 类似于验证表单 其中基于已输入的内容 元素之间必须存在某些逻辑关系 所以 如果我可以编写