在好例子网,分享、交流、成长!
您当前所在位置:首页Others 开发实例一般编程问题 → C#解析和执行JavaScript代码的.NET库(jurassic)源码

C#解析和执行JavaScript代码的.NET库(jurassic)源码

一般编程问题

下载此实例
  • 开发语言:Others
  • 实例大小:33.29M
  • 下载次数:0
  • 浏览次数:69
  • 发布时间:2024-05-14
  • 实例类别:一般编程问题
  • 发 布 人:chenxiaolan
  • 文件格式:.zip
  • 所需积分:2
 相关标签:

实例介绍

【实例简介】

Jurassic是ECMAScript语言和运行时的实现。它旨在为.NET提供性能最佳、最符合标准的JavaScript实现。

特点

  • 支持所有ECMAScript 3和ECMAScript 5功能,包括ES5严格模式
  • 经过全面测试 - 通过了五千多个单元测试(超过三万个断言)
  • 简单而强大的API
  • 将JavaScript编译为.NET字节码(CIL);不是解释器
  • 部署为单个.NET程序集(没有本机代码)
  • 在Visual Studio中具有集成调试的基本支持
  • 使用轻量级代码生成,因此生成的代码完全由垃圾收集
  • 在.NET 3.5、.NET 4和Silverlight上经过测试



【实例截图】

【核心代码】
文件清单
└── jurassic-e6168a9eb0f715f845df5e779ed3d94a613445b7
    ├── Attribute Code Generation
    │   ├── Attribute Code Generation.csproj
    │   └── Program.cs
    ├── Benchmarker
    │   ├── Benchmarker.csproj
    │   ├── Files
    │   │   ├── sunspider-0.9.1
    │   │   │   ├── 3d-cube.js
    │   │   │   ├── 3d-morph.js
    │   │   │   ├── 3d-raytrace.js
    │   │   │   ├── access-binary-trees.js
    │   │   │   ├── access-fannkuch.js
    │   │   │   ├── access-nbody.js
    │   │   │   ├── access-nsieve.js
    │   │   │   ├── bitops-3bit-bits-in-byte.js
    │   │   │   ├── bitops-bits-in-byte.js
    │   │   │   ├── bitops-bitwise-and.js
    │   │   │   ├── bitops-nsieve-bits.js
    │   │   │   ├── controlflow-recursive.js
    │   │   │   ├── crypto-aes.js
    │   │   │   ├── crypto-md5.js
    │   │   │   ├── crypto-sha1.js
    │   │   │   ├── date-format-tofte.js
    │   │   │   ├── date-format-xparb.js
    │   │   │   ├── math-cordic.js
    │   │   │   ├── math-partial-sums.js
    │   │   │   ├── math-spectral-norm.js
    │   │   │   ├── regexp-dna.js
    │   │   │   ├── string-base64.js
    │   │   │   ├── string-fasta.js
    │   │   │   ├── string-tagcloud.js
    │   │   │   ├── string-unpack-code.js
    │   │   │   └── string-validate-input.js
    │   │   ├── ubench
    │   │   │   ├── function-closure.js
    │   │   │   ├── function-correct-args.js
    │   │   │   ├── function-empty.js
    │   │   │   ├── function-excess-args.js
    │   │   │   ├── function-missing-args.js
    │   │   │   ├── function-sum.js
    │   │   │   ├── loop-empty.js
    │   │   │   ├── loop-empty-resolve.js
    │   │   │   └── loop-sum.js
    │   │   └── v8
    │   │       ├── crypto.js
    │   │       ├── deltablue.js
    │   │       ├── earley-boyer.js
    │   │       ├── raytrace.js
    │   │       ├── README.txt
    │   │       ├── regexp.js
    │   │       ├── richards.js
    │   │       └── splay.js
    │   └── Program.cs
    ├── Documentation
    │   ├── E262-3.doc
    │   ├── ECMA-262 (ECMAScript 5.1).pdf
    │   ├── ECMA-262 (ECMAScript 6).pdf
    │   └── ECMA-335 (CLI).pdf
    ├── Jurassic
    │   ├── Compiler
    │   │   ├── Binders
    │   │   │   ├── Binder.cs
    │   │   │   ├── BinderMethod.cs
    │   │   │   ├── BinderUtilities.cs
    │   │   │   ├── ClrBinder.cs
    │   │   │   ├── FieldBinders.cs
    │   │   │   ├── JSBinder.cs
    │   │   │   ├── JSBinderMethod.cs
    │   │   │   └── MethodBinder.cs
    │   │   ├── Debugging
    │   │   │   ├── SourceCodePosition.cs
    │   │   │   └── SourceCodeSpan.cs
    │   │   ├── Emit
    │   │   │   ├── EmitConversion.cs
    │   │   │   ├── EmitHelpers.cs
    │   │   │   ├── ILGenerator
    │   │   │   │   ├── DynamicILGenerator.cs
    │   │   │   │   ├── ILGenerator.cs
    │   │   │   │   ├── ILLabel.cs
    │   │   │   │   ├── ILLocalVariable.cs
    │   │   │   │   ├── LoggingILGenerator.cs
    │   │   │   │   ├── ReflectionEmitILGenerator.cs
    │   │   │   │   └── VerifyingILGenerator.cs
    │   │   │   ├── LongJumpException.cs
    │   │   │   ├── MethodOptimizationHints.cs
    │   │   │   ├── OptimizationInfo.cs
    │   │   │   ├── Optimizations.txt
    │   │   │   ├── PrimitiveType.cs
    │   │   │   ├── PrimitiveTypeUtilities.cs
    │   │   │   └── ReflectionHelpers.cs
    │   │   ├── ExecutionContext
    │   │   │   ├── ExecutionContext.cs
    │   │   │   └── RuntimeScope.cs
    │   │   ├── Expressions
    │   │   │   ├── ArrayLiteralExpression.cs
    │   │   │   ├── AssignmentExpression.cs
    │   │   │   ├── BinaryExpression.cs
    │   │   │   ├── ClassExpression.cs
    │   │   │   ├── Expression.cs
    │   │   │   ├── FunctionCallExpression.cs
    │   │   │   ├── FunctionExpression.cs
    │   │   │   ├── GroupingExpression.cs
    │   │   │   ├── IReferenceExpression.cs
    │   │   │   ├── ListExpression.cs
    │   │   │   ├── LiteralExpression.cs
    │   │   │   ├── MemberAccessExpression.cs
    │   │   │   ├── NameExpression.cs
    │   │   │   ├── NewExpression.cs
    │   │   │   ├── NewTargetExpression.cs
    │   │   │   ├── ObjectLiteralExpression.cs
    │   │   │   ├── OperatorExpression.cs
    │   │   │   ├── SuperExpression.cs
    │   │   │   ├── TemplateLiteralExpression.cs
    │   │   │   ├── TernaryExpression.cs
    │   │   │   ├── ThisExpression.cs
    │   │   │   └── UnaryExpression.cs
    │   │   ├── Lexer
    │   │   │   ├── IdentifierToken.cs
    │   │   │   ├── KeywordToken.cs
    │   │   │   ├── Lexer.cs
    │   │   │   ├── LiteralToken.cs
    │   │   │   ├── PunctuatorToken.cs
    │   │   │   ├── RegularExpressionLiteral.cs
    │   │   │   ├── StringLiteralToken.cs
    │   │   │   ├── TemplateLiteralToken.cs
    │   │   │   └── Token.cs
    │   │   ├── MethodGenerator
    │   │   │   ├── CodeContext.cs
    │   │   │   ├── CompilerOptions.cs
    │   │   │   ├── FunctionMethodGenerator.cs
    │   │   │   ├── GeneratedMethod.cs
    │   │   │   ├── GlobalOrEvalMethodGenerator.cs
    │   │   │   └── MethodGenerator.cs
    │   │   ├── Parser
    │   │   │   ├── AstNode.cs
    │   │   │   ├── Operator.cs
    │   │   │   ├── Parser.cs
    │   │   │   ├── PropertyDeclaration.cs
    │   │   │   ├── PropertyName.cs
    │   │   │   ├── Scope.cs
    │   │   │   └── ScopeType.cs
    │   │   ├── Statements
    │   │   │   ├── BlockStatement.cs
    │   │   │   ├── BreakStatement.cs
    │   │   │   ├── ContinueStatement.cs
    │   │   │   ├── DebuggerStatement.cs
    │   │   │   ├── DoWhileStatement.cs
    │   │   │   ├── EmptyStatement.cs
    │   │   │   ├── ExpressionStatement.cs
    │   │   │   ├── ForInStatement.cs
    │   │   │   ├── ForOfStatement.cs
    │   │   │   ├── ForStatement.cs
    │   │   │   ├── IfStatement.cs
    │   │   │   ├── LoopStatement.cs
    │   │   │   ├── ReturnStatement.cs
    │   │   │   ├── Statement.cs
    │   │   │   ├── SwitchStatement.cs
    │   │   │   ├── ThrowStatement.cs
    │   │   │   ├── TryCatchFinallyStatement.cs
    │   │   │   ├── VarLetOrConstStatement.cs
    │   │   │   ├── WhileStatement.cs
    │   │   │   └── WithStatement.cs
    │   │   └── SyntaxErrorException.cs
    │   ├── Core
    │   │   ├── BigInteger.cs
    │   │   ├── CompatibilityMode.cs
    │   │   ├── CompiledEval.cs
    │   │   ├── CompiledScript.cs
    │   │   ├── ConcatenatedString.cs
    │   │   ├── JavaScriptException.cs
    │   │   ├── Null.cs
    │   │   ├── NumberFormatter.cs
    │   │   ├── NumberParser.cs
    │   │   ├── ScriptEngine.cs
    │   │   ├── ScriptSource
    │   │   │   ├── FileScriptSource.cs
    │   │   │   ├── ScriptSource.cs
    │   │   │   └── StringScriptSource.cs
    │   │   ├── StackFrameTransformContext.cs
    │   │   ├── StringHelpers.cs
    │   │   ├── TypeComparer.cs
    │   │   ├── TypeConverter.cs
    │   │   ├── TypeUtilities.cs
    │   │   └── Undefined.cs
    │   ├── Jurassic.csproj
    │   ├── Library
    │   │   ├── Array
    │   │   │   ├── ArrayAdapter.cs
    │   │   │   ├── ArrayConstructor.cs
    │   │   │   ├── ArrayConstructor.g.cs
    │   │   │   ├── ArrayInstance.cs
    │   │   │   ├── ArrayInstance.g.cs
    │   │   │   ├── ArrayIterator.cs
    │   │   │   ├── ArrayIterator.g.cs
    │   │   │   └── SparseArray.cs
    │   │   ├── Boolean
    │   │   │   ├── BooleanConstructor.cs
    │   │   │   ├── BooleanConstructor.g.cs
    │   │   │   ├── BooleanInstance.cs
    │   │   │   └── BooleanInstance.g.cs
    │   │   ├── ClrWrapper
    │   │   │   ├── ClrInstanceTypeWrapper.cs
    │   │   │   ├── ClrInstanceWrapper.cs
    │   │   │   └── ClrStaticTypeWrapper.cs
    │   │   ├── Date
    │   │   │   ├── DateConstructor.cs
    │   │   │   ├── DateConstructor.g.cs
    │   │   │   ├── DateInstance.cs
    │   │   │   ├── DateInstance.g.cs
    │   │   │   └── DateParser.cs
    │   │   ├── Error
    │   │   │   ├── ErrorConstructor.cs
    │   │   │   ├── ErrorConstructor.g.cs
    │   │   │   ├── ErrorInstance.cs
    │   │   │   ├── ErrorInstance.g.cs
    │   │   │   └── ErrorType.cs
    │   │   ├── FirebugConsole
    │   │   │   ├── FirebugConsole.cs
    │   │   │   ├── FirebugConsole.g.cs
    │   │   │   ├── IFirebugConsoleOutput.cs
    │   │   │   └── StandardConsoleOutput.cs
    │   │   ├── Function
    │   │   │   ├── ArgumentsInstance.cs
    │   │   │   ├── ArgumentsInstance.g.cs
    │   │   │   ├── BoundFunction.cs
    │   │   │   ├── ClassFunction.cs
    │   │   │   ├── ClrFunction.cs
    │   │   │   ├── ClrStubFunction.cs
    │   │   │   ├── FunctionConstructor.cs
    │   │   │   ├── FunctionConstructor.g.cs
    │   │   │   ├── FunctionInstance.cs
    │   │   │   ├── FunctionInstance.g.cs
    │   │   │   ├── ThrowTypeErrorFunction.cs
    │   │   │   └── UserDefinedFunction.cs
    │   │   ├── GlobalObject.cs
    │   │   ├── GlobalObject.g.cs
    │   │   ├── Iterator.cs
    │   │   ├── Iterator.g.cs
    │   │   ├── JSON
    │   │   │   ├── JSONLexer.cs
    │   │   │   ├── JSONObject.cs
    │   │   │   ├── JSONObject.g.cs
    │   │   │   ├── JSONParser.cs
    │   │   │   └── JSONSerializer.cs
    │   │   ├── Map
    │   │   │   ├── MapConstructor.cs
    │   │   │   ├── MapConstructor.g.cs
    │   │   │   ├── MapInstance.cs
    │   │   │   ├── MapInstance.g.cs
    │   │   │   ├── MapIterator.cs
    │   │   │   └── MapIterator.g.cs
    │   │   ├── MathObject.cs
    │   │   ├── MathObject.g.cs
    │   │   ├── Number
    │   │   │   ├── NumberConstructor.cs
    │   │   │   ├── NumberConstructor.g.cs
    │   │   │   ├── NumberInstance.cs
    │   │   │   └── NumberInstance.g.cs
    │   │   ├── Object
    │   │   │   ├── Attributes.cs
    │   │   │   ├── HiddenClassSchema.cs
    │   │   │   ├── JSFunctionFlags.cs
    │   │   │   ├── ObjectConstructor.cs
    │   │   │   ├── ObjectConstructor.g.cs
    │   │   │   ├── ObjectInstance.cs
    │   │   │   ├── ObjectInstance.g.cs
    │   │   │   ├── PropertyAccessorValue.cs
    │   │   │   ├── PropertyAttributes.cs
    │   │   │   ├── PropertyDescriptor.cs
    │   │   │   ├── PropertyNameAndValue.cs
    │   │   │   ├── PropertyReference.cs
    │   │   │   └── SchemaProperty.cs
    │   │   ├── Promise
    │   │   │   ├── PromiseConstructor.cs
    │   │   │   ├── PromiseConstructor.g.cs
    │   │   │   ├── PromiseInstance.cs
    │   │   │   └── PromiseInstance.g.cs
    │   │   ├── Proxy
    │   │   │   ├── IProxyInstance.cs
    │   │   │   ├── ProxyConstructor.cs
    │   │   │   ├── ProxyConstructor.g.cs
    │   │   │   ├── ProxyFunction.cs
    │   │   │   └── ProxyObject.cs
    │   │   ├── Reflect
    │   │   │   ├── Reflect.cs
    │   │   │   └── Reflect.g.cs
    │   │   ├── RegExp
    │   │   │   ├── RegExpConstructor.cs
    │   │   │   ├── RegExpConstructor.g.cs
    │   │   │   ├── RegExpInstance.cs
    │   │   │   └── RegExpInstance.g.cs
    │   │   ├── Set
    │   │   │   ├── SetConstructor.cs
    │   │   │   ├── SetConstructor.g.cs
    │   │   │   ├── SetInstance.cs
    │   │   │   ├── SetInstance.g.cs
    │   │   │   ├── SetIterator.cs
    │   │   │   └── SetIterator.g.cs
    │   │   ├── String
    │   │   │   ├── StringConstructor.cs
    │   │   │   ├── StringConstructor.g.cs
    │   │   │   ├── StringInstance.cs
    │   │   │   ├── StringInstance.g.cs
    │   │   │   ├── StringIterator.cs
    │   │   │   └── StringIterator.g.cs
    │   │   ├── Symbol
    │   │   │   ├── SymbolConstructor.cs
    │   │   │   ├── SymbolConstructor.g.cs
    │   │   │   ├── Symbol.cs
    │   │   │   ├── SymbolInstance.cs
    │   │   │   └── SymbolInstance.g.cs
    │   │   ├── TypedArray
    │   │   │   ├── ArrayBufferConstructor.cs
    │   │   │   ├── ArrayBufferConstructor.g.cs
    │   │   │   ├── ArrayBufferInstance.cs
    │   │   │   ├── ArrayBufferInstance.g.cs
    │   │   │   ├── DataViewConstructor.cs
    │   │   │   ├── DataViewConstructor.g.cs
    │   │   │   ├── DataViewInstance.cs
    │   │   │   ├── DataViewInstance.g.cs
    │   │   │   ├── TypedArrayConstructor.cs
    │   │   │   ├── TypedArrayConstructor.g.cs
    │   │   │   ├── TypedArrayInstance.cs
    │   │   │   ├── TypedArrayInstance.g.cs
    │   │   │   └── TypedArrayType.cs
    │   │   ├── WeakMap
    │   │   │   ├── WeakMapConstructor.cs
    │   │   │   ├── WeakMapConstructor.g.cs
    │   │   │   ├── WeakMapInstance.cs
    │   │   │   └── WeakMapInstance.g.cs
    │   │   └── WeakSet
    │   │       ├── WeakSetConstructor.cs
    │   │       ├── WeakSetConstructor.g.cs
    │   │       ├── WeakSetInstance.cs
    │   │       └── WeakSetInstance.g.cs
    │   └── Properties
    │       └── AssemblyInfo.cs
    ├── Jurassic.sln
    ├── LICENSE.txt
    ├── README.md
    ├── REPL
    │   ├── Program.cs
    │   └── REPL.csproj
    ├── Test Suite Runner
    │   ├── Code
    │   │   ├── PipeClient.cs
    │   │   ├── PipeServer.cs
    │   │   ├── Test.cs
    │   │   ├── TestEventArgs.cs
    │   │   ├── TestOutcome.cs
    │   │   ├── TestSuite.cs
    │   │   ├── WorkerProcessRequest.cs
    │   │   └── WorkerProcessResponse.cs
    │   ├── Kangax
    │   │   ├── compat-table.json
    │   │   ├── compat-table.txt
    │   │   ├── global.js
    │   │   └── KangaxTestSuite.cs
    │   ├── Program.cs
    │   ├── test262
    │   │   ├── harness
    │   │   │   ├── arrayContains.js
    │   │   │   ├── assert.js
    │   │   │   ├── assertRelativeDateMs.js
    │   │   │   ├── atomicsHelper.js
    │   │   │   ├── byteConversionValues.js
    │   │   │   ├── compareArray.js
    │   │   │   ├── dateConstants.js
    │   │   │   ├── decimalToHexString.js
    │   │   │   ├── detachArrayBuffer.js
    │   │   │   ├── doneprintHandle.js
    │   │   │   ├── fnGlobalObject.js
    │   │   │   ├── nans.js
    │   │   │   ├── nativeFunctionMatcher.js
    │   │   │   ├── promiseHelper.js
    │   │   │   ├── propertyHelper.js
    │   │   │   ├── proxyTrapsHelper.js
    │   │   │   ├── regExpUtils.js
    │   │   │   ├── sta.js
    │   │   │   ├── tcoHelper.js
    │   │   │   ├── testAtomics.js
    │   │   │   ├── testBuiltInObject.js
    │   │   │   ├── testIntl.js
    │   │   │   ├── testTypedArray.js
    │   │   │   └── timer.js
    │   │   ├── LICENSE.txt
    │   │   └── test262-tests-20170825.zip
    │   ├── Test Suite Files
    │   │   ├── config
    │   │   │   └── excludelist.xml
    │   │   ├── harness
    │   │   │   ├── cth.js
    │   │   │   ├── Date_constants.js
    │   │   │   ├── Date_library.js
    │   │   │   ├── ed.js
    │   │   │   ├── environment.js
    │   │   │   ├── framework.js
    │   │   │   ├── gs.js
    │   │   │   ├── helper.js
    │   │   │   ├── jquery-1.4.2.min.js
    │   │   │   ├── jquery.base64.js
    │   │   │   ├── jqueryprogressbar.js
    │   │   │   ├── math_isequal.js
    │   │   │   ├── math_precision.js
    │   │   │   ├── numeric_conversion.js
    │   │   │   ├── sections.js
    │   │   │   ├── sta.js
    │   │   │   └── sth.js
    │   │   ├── ICSharpCode.SharpZipLib.dll
    │   │   ├── LICENSE.txt
    │   │   ├── README.txt
    │   │   ├── Results 2012-06-25.txt
    │   │   └── suite
    │   │       └── 2012-05-18.zip
    │   └── Test Suite Runner.csproj
    └── Unit Tests
        ├── Compiler
        │   ├── CodeGenTests.cs
        │   ├── ExpressionTests.cs
        │   ├── LexerTests.cs
        │   ├── ParserTests.cs
        │   ├── StatementTests.cs
        │   └── TypeInferenceTests.cs
        ├── Core
        │   ├── BigIntegerTests.cs
        │   ├── DocumentationSamples.cs
        │   ├── DynamicMetaObjectTests.cs
        │   ├── JsPropertyTests.cs
        │   ├── Sample Files
        │   │   ├── execute1.js
        │   │   └── globals1.js
        │   ├── ScriptEngineTests.cs
        │   ├── TypeComparerTests.cs
        │   ├── TypeConverterTests.cs
        │   └── TypeUtilitiesTests.cs
        ├── Library
        │   ├── ArgumentsTests.cs
        │   ├── ArrayBufferTests.cs
        │   ├── ArrayTests.cs
        │   ├── BooleanTests.cs
        │   ├── DataViewTests.cs
        │   ├── DateTests.cs
        │   ├── ErrorTests.cs
        │   ├── FunctionTests.cs
        │   ├── GlobalTests.cs
        │   ├── JSONTests.cs
        │   ├── MapTests.cs
        │   ├── MathTests.cs
        │   ├── NumberTests.cs
        │   ├── ObjectTests.cs
        │   ├── PromiseTests.cs
        │   ├── ProxyTests.cs
        │   ├── ReflectTests.cs
        │   ├── RegExpTests.cs
        │   ├── SetTests.cs
        │   ├── StringTests.cs
        │   ├── SymbolTests.cs
        │   ├── TypedArrayTests.cs
        │   ├── WeakMapTests.cs
        │   └── WeakSetTests.cs
        ├── Real-world
        │   ├── Files
        │   │   ├── bignumber.js
        │   │   ├── coffee-script.js
        │   │   ├── color-conversion.js
        │   │   ├── levenshtein.js
        │   │   ├── lzw.js
        │   │   ├── md5.js
        │   │   ├── rsa.js
        │   │   ├── sha1.js
        │   │   ├── sha256.js
        │   │   ├── showdown.js
        │   │   └── sprintf.js
        │   └── RealWorldTests.cs
        ├── Unit Tests.csproj
        └── Utils
            ├── TestBase.cs
            └── TestingContext.cs

63 directories, 416 files

标签:

实例下载地址

C#解析和执行JavaScript代码的.NET库(jurassic)源码

不能下载?内容有错? 点击这里报错 + 投诉 + 提问

好例子网口号:伸出你的我的手 — 分享

网友评论

发表评论

(您的评论需要经过审核才能显示)

查看所有0条评论>>

小贴士

感谢您为本站写下的评论,您的评论对其它用户来说具有重要的参考价值,所以请认真填写。

  • 类似“顶”、“沙发”之类没有营养的文字,对勤劳贡献的楼主来说是令人沮丧的反馈信息。
  • 相信您也不想看到一排文字/表情墙,所以请不要反馈意义不大的重复字符,也请尽量不要纯表情的回复。
  • 提问之前请再仔细看一遍楼主的说明,或许是您遗漏了。
  • 请勿到处挖坑绊人、招贴广告。既占空间让人厌烦,又没人会搭理,于人于己都无利。

关于好例子网

本站旨在为广大IT学习爱好者提供一个非营利性互相学习交流分享平台。本站所有资源都可以被免费获取学习研究。本站资源来自网友分享,对搜索内容的合法性不具有预见性、识别性、控制性,仅供学习研究,请务必在下载后24小时内给予删除,不得用于其他任何用途,否则后果自负。基于互联网的特殊性,平台无法对用户传输的作品、信息、内容的权属或合法性、安全性、合规性、真实性、科学性、完整权、有效性等进行实质审查;无论平台是否已进行审查,用户均应自行承担因其传输的作品、信息、内容而可能或已经产生的侵权或权属纠纷等法律责任。本站所有资源不代表本站的观点或立场,基于网友分享,根据中国法律《信息网络传播权保护条例》第二十二与二十三条之规定,若资源存在侵权或相关问题请联系本站客服人员,点此联系我们。关于更多版权及免责申明参见 版权及免责申明

;
报警