亚洲精品中文字幕无乱码_久久亚洲精品无码AV大片_最新国产免费Av网址_国产精品3级片

JavaScript

調(diào)用javascript

時(shí)間:2024-10-26 16:27:27 JavaScript 我要投稿
  • 相關(guān)推薦

調(diào)用javascript

  【提要】本篇《從零碼起調(diào)用javascript》特別為需要編程學(xué)習(xí)的朋友收集整理的,僅供參考。內(nèi)容如下:

  Java語(yǔ)言作為靜態(tài)面向?qū)ο缶幊陶Z(yǔ)言的代表,極好地實(shí)現(xiàn)了面向?qū)ο罄碚摚试S程序員以優(yōu)雅的思維方式進(jìn)行復(fù)雜的編程。以下是小編為大家搜索整理的從零碼起調(diào)用javascript,希望能給大家?guī)?lái)幫助!更多精彩內(nèi)容請(qǐng)及時(shí)關(guān)注我們考試網(wǎng)!

  package co.test;

  import java.io.FileReader;

  import java.io.LineNumberReader;

  import org.mozilla.javascript.Context;

  import org.mozilla.javascript.Function;

  import org.mozilla.javascript.Scriptable;

  public class JSExploration

  {

  private Context cx;

  private Scriptable scope;

  public JSExploration()

  {

  this.cx = Context.enter();

  this.scope = cx.initStandardObjects();

  }

  public Object runJavaScript(String filename)

  {

  String jsContent = this.getJsContent(filename);

  Object result = cx.evaluateString(scope, jsContent, filename, 1, null);

  return result;

  }

  private String getJsContent(String filename)

  {

  LineNumberReader reader;

  try

  {

  reader = new LineNumberReader(new FileReader(filename));

  String s = null;

  StringBuffer sb = new StringBuffer();

  while ((s = reader.readLine()) != null)

  {

  sb.append(s).append(" ");

  }

  return sb.toString();

  }

  catch (Exception e)

  {

  // TODO Auto-generated catch block

  e.printStackTrace();

  return null;

  }

  }

  public Scriptable getScope()

  {

  return scope;

  }

  public static void main(String[] args)

  {

  String filename = System.getProperty("user.dir") + "/jsmap.js";

  JSExploration jsExploration = new JSExploration();

  Object result = jsExploration.runJavaScript(filename);

  Scriptable scope = jsExploration.getScope();

  Function sum = (Function) scope.get("sum", scope);

  Function isPrime = (Function)sum.call(Context.getCurrentContext(), scope, sum, new Object[] {2,8});

  Object ss = isPrime.call(Context.getCurrentContext(), sum, isPrime, new Object[] {2,8});

  System.out.println(Context.toString(ss));

  }

  }

  試驗(yàn)了一個(gè)java 調(diào)用 javascript 的例子,如果把jsmap.js中的與this 有關(guān)的代碼注銷的話程序就可以正常運(yùn)行。不住銷掉的話就會(huì)報(bào)個(gè)運(yùn)行時(shí)錯(cuò)誤。。。

  js 代碼如下(有關(guān)this 的代碼已注銷):

  function sum(x, y) {

  // this.formulaeObject = null;

  // this.formulaeObject["vager"] = function (c, d) {

  // return (c + d)/2;

  // };

  var vager = 1000;

  return function (x,y){return x + y + vager;} ;

  }

【調(diào)用javascript】相關(guān)文章:

如何調(diào)試javascript腳本呢07-19

javascript跨域訪問(wèn)的方法07-19

原生ajax調(diào)用數(shù)據(jù)實(shí)例簡(jiǎn)單講解07-19

關(guān)于OrCad原理圖設(shè)計(jì)中模塊化的調(diào)用07-12

JAVA認(rèn)證基礎(chǔ)知識(shí):基于反射機(jī)制的服務(wù)代理調(diào)用07-18