Chúng tôi có thể chuyển đổi mã JavaScript sang Java không?

js-to-java

Cách dễ dàng để bọc đối tượng js thành đối tượng java

bằng hessian. js, chúng ta cần viết tên lớp java với đối tượng js để mã hóa nó dưới dạng lớp ghi

Cài đặt

$ npm install js-to-java

Cách sử dụng

Ví dụ

var java = require('js-to-java');

// Java: com.java.Object o = new com.java.Object();
java('com.java.Object', { foo: 'bar' });
// => {$class: 'com.java.Object', $: { foo: 'bar' }}

// Java: Boolean r;
java.Boolean(true);
// => {$class: 'java.lang.Boolean', $: true}

// Java: short[] shorts = new short[] {1, 2, 3};
java.array('short', [1, 2, 3]);
// => {$class: '[short', $: [1, 2, 3]}

// Java: int[] ints = new int[] {1, 2, 3};
java.array('int', [1, 2, 3]);
// same to the next example
java.array.int([1, 2, 3]);
// => {$class: '[int', $: [1, 2, 3]}

API

Loại ánh xạ

  Boolean: 'java.lang.Boolean',
  boolean: 'boolean',
  Integer: 'java.lang.Integer',
  int: 'int',
  short: 'short',
  Short: 'java.lang.Short',
  byte: 'byte',
  Byte: 'java.lang.Byte',
  long: 'long',
  Long: 'java.lang.Long',
  double: 'double',
  Double: 'java.lang.Double',
  float: 'float',
  Float: 'java.lang.Float',
  String: 'java.lang.String',
  char: 'char',
  chars: 'char[]',
  Character: 'java.lang.Character',
  List: 'java.util.List',
  Set: 'java.util.Set',
  Collection: 'java.util.Collection',
  Iterator: 'java.util.Iterator',
  Enumeration: 'java.util.Enumeration',
  HashMap: 'java.util.HashMap',
  Map: 'java.util.Map',
  Dictionary: 'java.util.Dictionary'

java. trừu tượng (tên lớp trừu tượng, tên lớp, giá trị)

lớp trừu tượng

java.abstract('com.demo.Parent', 'com.demo.Child', { foo: 'bar' });
// => { $abstractClass: 'com.demo.Parent', $class: 'com.demo.Child', $: { foo: 'bar' } }

java[. kết hợp](tên lớp, giá trị)

Chức năng kết hợp tùy chỉnh

java.combine('com.test.Object', { foo: 'bar' });
java('com.test.Object', { foo: 'bar' });
// => { $class: 'com.test.Object', $: { foo: 'bar' } }

java. Lớp(tên lớp)

java.Class('java.lang.String');
// => { $class: 'java.lang.Class', $: { name: 'java.lang.String' } }

java. Ngôn ngữ(ngôn ngữ, xử lý)

java.Locale('zh_CN', ['com.caucho.hessian.io.LocaleHandle']);
// => { $class: 'com.caucho.hessian.io.LocaleHandle', $: { value: 'zh_CN' } }

java. BigDecimal(thập phân)

java.BigDecimal('100.06');
// Or java.BigDecimal({value: '100.06'});
// => { $class: 'java.math.BigDecimal', $: { value: '100.06' } }

java. enum(tên lớp, giá trị)

________số 8

java. mảng (tên lớp, giá trị)

java.array('Boolean', [true, false]);
// => { $class: '[java.lang.Boolean' $: [true, false] }

Các phím tắt lớp tích hợp có sẵn

  • var java = require('js-to-java');
    
    // Java: com.java.Object o = new com.java.Object();
    java('com.java.Object', { foo: 'bar' });
    // => {$class: 'com.java.Object', $: { foo: 'bar' }}
    
    // Java: Boolean r;
    java.Boolean(true);
    // => {$class: 'java.lang.Boolean', $: true}
    
    // Java: short[] shorts = new short[] {1, 2, 3};
    java.array('short', [1, 2, 3]);
    // => {$class: '[short', $: [1, 2, 3]}
    
    // Java: int[] ints = new int[] {1, 2, 3};
    java.array('int', [1, 2, 3]);
    // same to the next example
    java.array.int([1, 2, 3]);
    // => {$class: '[int', $: [1, 2, 3]}
    2
  • var java = require('js-to-java');
    
    // Java: com.java.Object o = new com.java.Object();
    java('com.java.Object', { foo: 'bar' });
    // => {$class: 'com.java.Object', $: { foo: 'bar' }}
    
    // Java: Boolean r;
    java.Boolean(true);
    // => {$class: 'java.lang.Boolean', $: true}
    
    // Java: short[] shorts = new short[] {1, 2, 3};
    java.array('short', [1, 2, 3]);
    // => {$class: '[short', $: [1, 2, 3]}
    
    // Java: int[] ints = new int[] {1, 2, 3};
    java.array('int', [1, 2, 3]);
    // same to the next example
    java.array.int([1, 2, 3]);
    // => {$class: '[int', $: [1, 2, 3]}
    3
  • var java = require('js-to-java');
    
    // Java: com.java.Object o = new com.java.Object();
    java('com.java.Object', { foo: 'bar' });
    // => {$class: 'com.java.Object', $: { foo: 'bar' }}
    
    // Java: Boolean r;
    java.Boolean(true);
    // => {$class: 'java.lang.Boolean', $: true}
    
    // Java: short[] shorts = new short[] {1, 2, 3};
    java.array('short', [1, 2, 3]);
    // => {$class: '[short', $: [1, 2, 3]}
    
    // Java: int[] ints = new int[] {1, 2, 3};
    java.array('int', [1, 2, 3]);
    // same to the next example
    java.array.int([1, 2, 3]);
    // => {$class: '[int', $: [1, 2, 3]}
    4
  • var java = require('js-to-java');
    
    // Java: com.java.Object o = new com.java.Object();
    java('com.java.Object', { foo: 'bar' });
    // => {$class: 'com.java.Object', $: { foo: 'bar' }}
    
    // Java: Boolean r;
    java.Boolean(true);
    // => {$class: 'java.lang.Boolean', $: true}
    
    // Java: short[] shorts = new short[] {1, 2, 3};
    java.array('short', [1, 2, 3]);
    // => {$class: '[short', $: [1, 2, 3]}
    
    // Java: int[] ints = new int[] {1, 2, 3};
    java.array('int', [1, 2, 3]);
    // same to the next example
    java.array.int([1, 2, 3]);
    // => {$class: '[int', $: [1, 2, 3]}
    5
  • var java = require('js-to-java');
    
    // Java: com.java.Object o = new com.java.Object();
    java('com.java.Object', { foo: 'bar' });
    // => {$class: 'com.java.Object', $: { foo: 'bar' }}
    
    // Java: Boolean r;
    java.Boolean(true);
    // => {$class: 'java.lang.Boolean', $: true}
    
    // Java: short[] shorts = new short[] {1, 2, 3};
    java.array('short', [1, 2, 3]);
    // => {$class: '[short', $: [1, 2, 3]}
    
    // Java: int[] ints = new int[] {1, 2, 3};
    java.array('int', [1, 2, 3]);
    // same to the next example
    java.array.int([1, 2, 3]);
    // => {$class: '[int', $: [1, 2, 3]}
    6
  • var java = require('js-to-java');
    
    // Java: com.java.Object o = new com.java.Object();
    java('com.java.Object', { foo: 'bar' });
    // => {$class: 'com.java.Object', $: { foo: 'bar' }}
    
    // Java: Boolean r;
    java.Boolean(true);
    // => {$class: 'java.lang.Boolean', $: true}
    
    // Java: short[] shorts = new short[] {1, 2, 3};
    java.array('short', [1, 2, 3]);
    // => {$class: '[short', $: [1, 2, 3]}
    
    // Java: int[] ints = new int[] {1, 2, 3};
    java.array('int', [1, 2, 3]);
    // same to the next example
    java.array.int([1, 2, 3]);
    // => {$class: '[int', $: [1, 2, 3]}
    7
  • var java = require('js-to-java');
    
    // Java: com.java.Object o = new com.java.Object();
    java('com.java.Object', { foo: 'bar' });
    // => {$class: 'com.java.Object', $: { foo: 'bar' }}
    
    // Java: Boolean r;
    java.Boolean(true);
    // => {$class: 'java.lang.Boolean', $: true}
    
    // Java: short[] shorts = new short[] {1, 2, 3};
    java.array('short', [1, 2, 3]);
    // => {$class: '[short', $: [1, 2, 3]}
    
    // Java: int[] ints = new int[] {1, 2, 3};
    java.array('int', [1, 2, 3]);
    // same to the next example
    java.array.int([1, 2, 3]);
    // => {$class: '[int', $: [1, 2, 3]}
    8
  • var java = require('js-to-java');
    
    // Java: com.java.Object o = new com.java.Object();
    java('com.java.Object', { foo: 'bar' });
    // => {$class: 'com.java.Object', $: { foo: 'bar' }}
    
    // Java: Boolean r;
    java.Boolean(true);
    // => {$class: 'java.lang.Boolean', $: true}
    
    // Java: short[] shorts = new short[] {1, 2, 3};
    java.array('short', [1, 2, 3]);
    // => {$class: '[short', $: [1, 2, 3]}
    
    // Java: int[] ints = new int[] {1, 2, 3};
    java.array('int', [1, 2, 3]);
    // same to the next example
    java.array.int([1, 2, 3]);
    // => {$class: '[int', $: [1, 2, 3]}
    9
  •   Boolean: 'java.lang.Boolean',
      boolean: 'boolean',
      Integer: 'java.lang.Integer',
      int: 'int',
      short: 'short',
      Short: 'java.lang.Short',
      byte: 'byte',
      Byte: 'java.lang.Byte',
      long: 'long',
      Long: 'java.lang.Long',
      double: 'double',
      Double: 'java.lang.Double',
      float: 'float',
      Float: 'java.lang.Float',
      String: 'java.lang.String',
      char: 'char',
      chars: 'char[]',
      Character: 'java.lang.Character',
      List: 'java.util.List',
      Set: 'java.util.Set',
      Collection: 'java.util.Collection',
      Iterator: 'java.util.Iterator',
      Enumeration: 'java.util.Enumeration',
      HashMap: 'java.util.HashMap',
      Map: 'java.util.Map',
      Dictionary: 'java.util.Dictionary'
    0
  •   Boolean: 'java.lang.Boolean',
      boolean: 'boolean',
      Integer: 'java.lang.Integer',
      int: 'int',
      short: 'short',
      Short: 'java.lang.Short',
      byte: 'byte',
      Byte: 'java.lang.Byte',
      long: 'long',
      Long: 'java.lang.Long',
      double: 'double',
      Double: 'java.lang.Double',
      float: 'float',
      Float: 'java.lang.Float',
      String: 'java.lang.String',
      char: 'char',
      chars: 'char[]',
      Character: 'java.lang.Character',
      List: 'java.util.List',
      Set: 'java.util.Set',
      Collection: 'java.util.Collection',
      Iterator: 'java.util.Iterator',
      Enumeration: 'java.util.Enumeration',
      HashMap: 'java.util.HashMap',
      Map: 'java.util.Map',
      Dictionary: 'java.util.Dictionary'
    1
  •   Boolean: 'java.lang.Boolean',
      boolean: 'boolean',
      Integer: 'java.lang.Integer',
      int: 'int',
      short: 'short',
      Short: 'java.lang.Short',
      byte: 'byte',
      Byte: 'java.lang.Byte',
      long: 'long',
      Long: 'java.lang.Long',
      double: 'double',
      Double: 'java.lang.Double',
      float: 'float',
      Float: 'java.lang.Float',
      String: 'java.lang.String',
      char: 'char',
      chars: 'char[]',
      Character: 'java.lang.Character',
      List: 'java.util.List',
      Set: 'java.util.Set',
      Collection: 'java.util.Collection',
      Iterator: 'java.util.Iterator',
      Enumeration: 'java.util.Enumeration',
      HashMap: 'java.util.HashMap',
      Map: 'java.util.Map',
      Dictionary: 'java.util.Dictionary'
    2
  •   Boolean: 'java.lang.Boolean',
      boolean: 'boolean',
      Integer: 'java.lang.Integer',
      int: 'int',
      short: 'short',
      Short: 'java.lang.Short',
      byte: 'byte',
      Byte: 'java.lang.Byte',
      long: 'long',
      Long: 'java.lang.Long',
      double: 'double',
      Double: 'java.lang.Double',
      float: 'float',
      Float: 'java.lang.Float',
      String: 'java.lang.String',
      char: 'char',
      chars: 'char[]',
      Character: 'java.lang.Character',
      List: 'java.util.List',
      Set: 'java.util.Set',
      Collection: 'java.util.Collection',
      Iterator: 'java.util.Iterator',
      Enumeration: 'java.util.Enumeration',
      HashMap: 'java.util.HashMap',
      Map: 'java.util.Map',
      Dictionary: 'java.util.Dictionary'
    3
  •   Boolean: 'java.lang.Boolean',
      boolean: 'boolean',
      Integer: 'java.lang.Integer',
      int: 'int',
      short: 'short',
      Short: 'java.lang.Short',
      byte: 'byte',
      Byte: 'java.lang.Byte',
      long: 'long',
      Long: 'java.lang.Long',
      double: 'double',
      Double: 'java.lang.Double',
      float: 'float',
      Float: 'java.lang.Float',
      String: 'java.lang.String',
      char: 'char',
      chars: 'char[]',
      Character: 'java.lang.Character',
      List: 'java.util.List',
      Set: 'java.util.Set',
      Collection: 'java.util.Collection',
      Iterator: 'java.util.Iterator',
      Enumeration: 'java.util.Enumeration',
      HashMap: 'java.util.HashMap',
      Map: 'java.util.Map',
      Dictionary: 'java.util.Dictionary'
    4
  •   Boolean: 'java.lang.Boolean',
      boolean: 'boolean',
      Integer: 'java.lang.Integer',
      int: 'int',
      short: 'short',
      Short: 'java.lang.Short',
      byte: 'byte',
      Byte: 'java.lang.Byte',
      long: 'long',
      Long: 'java.lang.Long',
      double: 'double',
      Double: 'java.lang.Double',
      float: 'float',
      Float: 'java.lang.Float',
      String: 'java.lang.String',
      char: 'char',
      chars: 'char[]',
      Character: 'java.lang.Character',
      List: 'java.util.List',
      Set: 'java.util.Set',
      Collection: 'java.util.Collection',
      Iterator: 'java.util.Iterator',
      Enumeration: 'java.util.Enumeration',
      HashMap: 'java.util.HashMap',
      Map: 'java.util.Map',
      Dictionary: 'java.util.Dictionary'
    5
  •   Boolean: 'java.lang.Boolean',
      boolean: 'boolean',
      Integer: 'java.lang.Integer',
      int: 'int',
      short: 'short',
      Short: 'java.lang.Short',
      byte: 'byte',
      Byte: 'java.lang.Byte',
      long: 'long',
      Long: 'java.lang.Long',
      double: 'double',
      Double: 'java.lang.Double',
      float: 'float',
      Float: 'java.lang.Float',
      String: 'java.lang.String',
      char: 'char',
      chars: 'char[]',
      Character: 'java.lang.Character',
      List: 'java.util.List',
      Set: 'java.util.Set',
      Collection: 'java.util.Collection',
      Iterator: 'java.util.Iterator',
      Enumeration: 'java.util.Enumeration',
      HashMap: 'java.util.HashMap',
      Map: 'java.util.Map',
      Dictionary: 'java.util.Dictionary'
    6
  •   Boolean: 'java.lang.Boolean',
      boolean: 'boolean',
      Integer: 'java.lang.Integer',
      int: 'int',
      short: 'short',
      Short: 'java.lang.Short',
      byte: 'byte',
      Byte: 'java.lang.Byte',
      long: 'long',
      Long: 'java.lang.Long',
      double: 'double',
      Double: 'java.lang.Double',
      float: 'float',
      Float: 'java.lang.Float',
      String: 'java.lang.String',
      char: 'char',
      chars: 'char[]',
      Character: 'java.lang.Character',
      List: 'java.util.List',
      Set: 'java.util.Set',
      Collection: 'java.util.Collection',
      Iterator: 'java.util.Iterator',
      Enumeration: 'java.util.Enumeration',
      HashMap: 'java.util.HashMap',
      Map: 'java.util.Map',
      Dictionary: 'java.util.Dictionary'
    7
  •   Boolean: 'java.lang.Boolean',
      boolean: 'boolean',
      Integer: 'java.lang.Integer',
      int: 'int',
      short: 'short',
      Short: 'java.lang.Short',
      byte: 'byte',
      Byte: 'java.lang.Byte',
      long: 'long',
      Long: 'java.lang.Long',
      double: 'double',
      Double: 'java.lang.Double',
      float: 'float',
      Float: 'java.lang.Float',
      String: 'java.lang.String',
      char: 'char',
      chars: 'char[]',
      Character: 'java.lang.Character',
      List: 'java.util.List',
      Set: 'java.util.Set',
      Collection: 'java.util.Collection',
      Iterator: 'java.util.Iterator',
      Enumeration: 'java.util.Enumeration',
      HashMap: 'java.util.HashMap',
      Map: 'java.util.Map',
      Dictionary: 'java.util.Dictionary'
    8
  •   Boolean: 'java.lang.Boolean',
      boolean: 'boolean',
      Integer: 'java.lang.Integer',
      int: 'int',
      short: 'short',
      Short: 'java.lang.Short',
      byte: 'byte',
      Byte: 'java.lang.Byte',
      long: 'long',
      Long: 'java.lang.Long',
      double: 'double',
      Double: 'java.lang.Double',
      float: 'float',
      Float: 'java.lang.Float',
      String: 'java.lang.String',
      char: 'char',
      chars: 'char[]',
      Character: 'java.lang.Character',
      List: 'java.util.List',
      Set: 'java.util.Set',
      Collection: 'java.util.Collection',
      Iterator: 'java.util.Iterator',
      Enumeration: 'java.util.Enumeration',
      HashMap: 'java.util.HashMap',
      Map: 'java.util.Map',
      Dictionary: 'java.util.Dictionary'
    9
  • java.abstract('com.demo.Parent', 'com.demo.Child', { foo: 'bar' });
    // => { $abstractClass: 'com.demo.Parent', $class: 'com.demo.Child', $: { foo: 'bar' } }
    0
  • java.abstract('com.demo.Parent', 'com.demo.Child', { foo: 'bar' });
    // => { $abstractClass: 'com.demo.Parent', $class: 'com.demo.Child', $: { foo: 'bar' } }
    1
  • java.abstract('com.demo.Parent', 'com.demo.Child', { foo: 'bar' });
    // => { $abstractClass: 'com.demo.Parent', $class: 'com.demo.Child', $: { foo: 'bar' } }
    2
  • java.abstract('com.demo.Parent', 'com.demo.Child', { foo: 'bar' });
    // => { $abstractClass: 'com.demo.Parent', $class: 'com.demo.Child', $: { foo: 'bar' } }
    3
  • java.abstract('com.demo.Parent', 'com.demo.Child', { foo: 'bar' });
    // => { $abstractClass: 'com.demo.Parent', $class: 'com.demo.Child', $: { foo: 'bar' } }
    4
  • java.abstract('com.demo.Parent', 'com.demo.Child', { foo: 'bar' });
    // => { $abstractClass: 'com.demo.Parent', $class: 'com.demo.Child', $: { foo: 'bar' } }
    5
  • java.abstract('com.demo.Parent', 'com.demo.Child', { foo: 'bar' });
    // => { $abstractClass: 'com.demo.Parent', $class: 'com.demo.Child', $: { foo: 'bar' } }
    6

java. ngoại lệ (err [, className])

tên lớp mặc định là

java.abstract('com.demo.Parent', 'com.demo.Child', { foo: 'bar' });
// => { $abstractClass: 'com.demo.Parent', $class: 'com.demo.Child', $: { foo: 'bar' } }
7

var java = require('js-to-java');

// Java: com.java.Object o = new com.java.Object();
java('com.java.Object', { foo: 'bar' });
// => {$class: 'com.java.Object', $: { foo: 'bar' }}

// Java: Boolean r;
java.Boolean(true);
// => {$class: 'java.lang.Boolean', $: true}

// Java: short[] shorts = new short[] {1, 2, 3};
java.array('short', [1, 2, 3]);
// => {$class: '[short', $: [1, 2, 3]}

// Java: int[] ints = new int[] {1, 2, 3};
java.array('int', [1, 2, 3]);
// same to the next example
java.array.int([1, 2, 3]);
// => {$class: '[int', $: [1, 2, 3]}
0

java. hoàn nguyên (obj)

Quấn đối tượng java trở lại đối tượng js ngược lại

var java = require('js-to-java');

// Java: com.java.Object o = new com.java.Object();
java('com.java.Object', { foo: 'bar' });
// => {$class: 'com.java.Object', $: { foo: 'bar' }}

// Java: Boolean r;
java.Boolean(true);
// => {$class: 'java.lang.Boolean', $: true}

// Java: short[] shorts = new short[] {1, 2, 3};
java.array('short', [1, 2, 3]);
// => {$class: '[short', $: [1, 2, 3]}

// Java: int[] ints = new int[] {1, 2, 3};
java.array('int', [1, 2, 3]);
// same to the next example
java.array.int([1, 2, 3]);
// => {$class: '[int', $: [1, 2, 3]}
1

Giấy phép

MIT

Làm cách nào để biên dịch JavaScript sang Java?

Biên dịch Javascript thành mã byte Java .
tạo một cái lọ và thêm vào ~/Library/Java/Extensions. công ty cổ phần javac. java echo "Lớp chính. Jsc"> bảng kê khai. txt jar -cmf tệp kê khai. txt jsc. jar Jsc. lớp mv jsc. jar ~/Thư viện/Java/Tiện ích mở rộng/
thiết lập bí danh. alias jsc="java -jar ~/Library/Java/Extensions/jsc. bình $1"

JavaScript có tương thích với Java không?

Java và JavaScript tương thích với trình duyệt có nghĩa là cả hai đều có khả năng chạy trên trình duyệt. JavaScript có thể chạy trên hầu hết các trình duyệt web hiện đại, do đó cho phép nó trở thành lựa chọn ưu tiên để phát triển web. Mặt khác, Java Applet do Java điều khiển cũng có thể chạy trong trình duyệt.