我正在构建一个.NET 3.5应用程序,并且需要在服务器上评估JS代码 - 基本上是用户提供的规则集,可以在浏览器或服务器上运行.托管JS不是一个选项,因为JS代码将在运行时提供.Aptana的Jaxer也不是一个选择.所以我正在研究在我的应用程序中使用V8引擎的构建.
我成功地将源代码构建到DLL中,但该DLL不是托管库,也不是COM.V8只是普通的C++.
关于如何在C#中与这种类型的DLL互操作的任何想法?另外,我对SpiderMonkey或其他JS引擎的其他建议持开放态度.
提前致谢.
更新:
我能够使用Ryan的解决方案.我刚刚更新了对trunk的最新版本的引用.它运作得很好.谢谢瑞恩.
是否有可能以某种方式将函数的范围传递给另一个函数?
例如,
function a(){
var x = 5;
var obj = {..};
b(<my-scope>);
}
function b(){
//access x or obj....
}
Run Code Online (Sandbox Code Playgroud)
我宁愿直接访问的变量,即不使用任何类似this.a或者this.obj,只是使用x或obj直接.
我试图让我的头围绕node.js ...
我对我的LAMP设置非常满意,因为它目前符合我的要求.虽然我想在我的PHP应用程序中添加一些实时功能.例如显示当前登录我网站的所有用户以及可能的聊天功能.
我不想替换我的PHP后端,但我确实想要可扩展的实时解决方案.
1.我可以将node.js放入混合中以满足我的需求而无需重建整个应用程序服务器端脚本吗?
2. node.js如何最好地为我的"聊天"和"当前登录"功能提供服务?
很高兴听到你的意见!
W.
我已经在聊天应用程序上使用node.js了一段时间(我知道,非常原创,但我认为这是一个很好的学习项目).Underscore.js提供了许多看起来很有趣的函数式编程概念,所以我想了解如何设置JavaScript中的函数式程序.
根据我对函数式编程的理解(这可能是错误的),整个想法是避免副作用,这些副作用基本上都有一个函数来更新函数之外的另一个变量,所以像
var external;
function foo() {
external = 'bar';
}
foo();
Run Code Online (Sandbox Code Playgroud)
会产生副作用,对吗?因此,作为一般规则,您希望避免在全局范围内扰乱变量.
好的,那么当你处理对象时它是如何工作的呢?例如,很多时候,我将有一个构造函数和初始化对象的init方法,如下所示:
var Foo = function(initVars) {
this.init(initVars);
}
Foo.prototype.init = function(initVars) {
this.bar1 = initVars['bar1'];
this.bar2 = initVars['bar2'];
//....
}
var myFoo = new Foo({'bar1': '1', 'bar2': '2'});
Run Code Online (Sandbox Code Playgroud)
所以我的init方法是故意造成副作用,但是处理相同情况的功能方法是什么?
此外,如果有人可以指向我尝试尽可能功能的程序的Python或JavaScript源代码,那也将非常感激.我觉得我接近"得到它",但我只是不在那里.主要是我对函数式编程如何与传统的OOP类概念一起工作感兴趣(或者如果出现这种情况的话,可以将其用于不同的东西).
javascript functional-programming serverside-javascript node.js underscore.js
我使用的是寻找一个例子Mustachejs与Nodejs
这是我的例子,但它不起作用.Mustache未定义.我正在使用主分支中的Mustachejs.
var sys = require('sys');
var m = require("./mustache");
var view = {
title: "Joe",
calc: function() {
return 2 + 4;
}
};
var template = "{{title}} spends {{calc}}";
var html = Mustache().to_html(template, view);
sys.puts(html);
Run Code Online (Sandbox Code Playgroud) 我开始了解node.js,我正在试图弄清楚我将如何做普通的MVC.例如,这是一个Django视图,它从数据库中提取两组记录,并将它们发送到模板中呈现.
def view(request):
things1 = ThingsOne.objects.all()
things2 = ThingsTwo.objects.all()
render_to_response('template.html, {'things1': things1, 'things2': things2})
Run Code Online (Sandbox Code Playgroud)
类似的node.js函数可能是什么样的?
javascript model-view-controller server-side serverside-javascript node.js
我一直在关注服务器端JavaScript的最新发展 - 尤其是Node.js - 并想知道是否有可能使用这种方法来开发Google App Engine Web应用程序 - 与Python或Java分开或结合使用?
是否有适用于JavaScript的Call-Graph和/或Control-Flow-Graph生成器?
调用图 - http://en.wikipedia.org/wiki/Call_graph
控制流图 - http://en.wikipedia.org/wiki/Control_flow_graph
编辑:我正在寻找一个静态工具,让我使用一些API /代码访问图形
javascript call-graph control-flow serverside-javascript node.js
我一直想知道尝试服务器端的JavaScript一段时间.而且我找到了大量的服务器,例如: Node.js Rhino SpiderMonkey等.
任何有服务器端javascript经验的人都可以告诉我哪些是最好的引擎?为什么?我喜欢Node.js,因为它基于谷歌的V8引擎.而且似乎很容易使用.但是一些关于你会选择什么的反馈会很棒.
编辑:
我正在考虑使用这个,但仍然欢迎反馈.
谢谢
我正在建立一个有时间和价格的网站.我最关心的是同步时间,以便在所有客户端尽可能准确.
目前,我正在向客户端发送剩余的毫秒数,然后用于为倒数计时器提供燃料,但由于传输和渲染延迟,即使在同一台计算机上有2个浏览器,也可能会关闭几秒钟.
有没有办法同步客户端的javascript时间和服务器时间,或者我只是要处理这种轻微的延迟?
如果只有一种方法可以准确地测量发送数据的服务器与客户端接收和呈现数据之间的时差.
javascript ×8
node.js ×8
server-side ×2
.net ×1
apache ×1
call-graph ×1
closures ×1
control-flow ×1
interop ×1
php ×1
scope ×1
v8 ×1