1、打開開發(fā)環(huán)境,新建一個web項目。加載JavaScript腳本引擎,在Java中加載js語句方法。執(zhí)行Java后,運行JavaScriptsay函數(shù)。將java中對象作為js中的全局變量,同時將file類賦給JavaScript腳本語言,并獲得其屬性值。

專注于為中小企業(yè)提供成都網(wǎng)站設(shè)計、網(wǎng)站建設(shè)、外貿(mào)網(wǎng)站建設(shè)服務,電腦端+手機端+微信端的三站合一,更高效的管理,為中小企業(yè)昌吉免費做網(wǎng)站提供優(yōu)質(zhì)的服務。我們立足成都,凝聚了一批互聯(lián)網(wǎng)行業(yè)人才,有力地推動了上千余家企業(yè)的穩(wěn)健成長,幫助中小企業(yè)通過網(wǎng)站建設(shè)實現(xiàn)規(guī)模擴充和轉(zhuǎn)變。
2、JDK6版添加了新的ScriptEngine類,允許用戶直接執(zhí)行js代碼。在Java中直接調(diào)用js代碼 不能調(diào)用瀏覽器中定義的js函數(shù),會拋出異常提示ReferenceError: “alert” is not defined。
3、在java中調(diào)用js,jdk6中有加載js引擎類,然后由它來調(diào)用js方法。
4、return c;} 在Java代碼中讀取js文件,并參數(shù)兩個參數(shù),然后回去返回值。
// expression.js function merge(a, b) { c = a * b;return c;} 在Java代碼中讀取js文件,并參數(shù)兩個參數(shù),然后回去返回值。
[java] view plain copy / 在java中調(diào)用js,jdk6中有加載js引擎類,然后由它來調(diào)用js方法。
在Java中直接調(diào)用js代碼 不能調(diào)用瀏覽器中定義的js函數(shù),會拋出異常提示ReferenceError: “alert” is not defined。
可使用前臺js申請后臺java代碼,把數(shù)據(jù)用返回值的方式,返回給前臺。這種方式用的最多的就是使用ajax了。使用在后臺與服務器進行少量數(shù)據(jù)交換,ajax可使網(wǎng)站實現(xiàn)異步更換。
js文件中的merge函數(shù)將兩個參數(shù)a,b相加,并返回c。// expression.js function merge(a, b) { c = a * b;return c;} 在Java代碼中讀取js文件,并參數(shù)兩個參數(shù),然后回去返回值。
[java] view plain copy / 在java中調(diào)用js,jdk6中有加載js引擎類,然后由它來調(diào)用js方法。
只能是js間接調(diào)用java 過程是:js在客戶端瀏覽器上運行,然后js讓瀏覽器發(fā)送請求到服務器,然后服務器上的中間件(如tomcat)來把瀏覽器的請求(httpRequest)轉(zhuǎn)交給java程序來處理。
function是屬于javascript里面的語法,而%%里面調(diào)用的是java的語法,所以想要用%%調(diào)用alert()是不行了,因為他們不是同一個東西。
Java是后臺運行的,你需要把前臺的js文件讀入后臺才能執(zhí)行,比如通過engine.eval(new FileReader(jsfile));這樣的語句才能執(zhí)行 ,而且執(zhí)行的結(jié)果只在后臺,和前臺沒關(guān)系。
分享文章:java運行js代碼 java執(zhí)行js代碼
轉(zhuǎn)載來源:http://www.chinadenli.net/article40/dehcdeo.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供微信公眾號、網(wǎng)站改版、搜索引擎優(yōu)化、虛擬主機、商城網(wǎng)站、企業(yè)網(wǎng)站制作
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)