javascript转c#怎么办

JavaScript010

javascript转c#怎么办,第1张

你是说把C#可以使用js方法,或者说是把js的方法转成C#的方法么?

首先你要新建一个js,把js方法拷贝过来

然后利用.net自带的编译程序。给你举个例子,加入我C盘下有个文件,内容是

public class JS

{

public static function Test(a)

{

return a+1

}

}

然后选择开始->程序->Visiual Stdio->Visiual Stdio Tool->命令提示符工具

然后输入(以我的为例)

C:\Program Files\Microsoft Visual Studio 10.0\VC>jsc /t:library c:\js.js

这句就是把C盘下的js.js编译成.net的dll,

生成的目录在(以我的为例)

C:\Program Files\Microsoft Visual Studio 10.0\VC下面。

你在程序里引用一下该dll,同时引用一下MicroSoft.JScript。

然后在程序里,你应该可以有这样一个方法

JS.Test(object a),传一个参数进去,就能返回 结果。

记住:

1,JS的方法外面必须包含(public class JS)类,这个JS你随便取。

2,JS的所有方法前面必须加入public static,否则引用不到。

var lonlat={x:114.514864,y:38.04232}

var mercator={x:12747736.346966475,y:4585405.935084799}

//经纬度转墨卡托

function lonlat2mercator(lonlat){

var mercator={x:0,y:0}

var x = lonlat.x *20037508.34/180

var y = Math.log(Math.tan((90+lonlat.y)*Math.PI/360))/(Math.PI/180)

y = y *20037508.34/180

mercator.x = x

mercator.y = y

return mercator

}

//墨卡托转经纬度

function mercator2lonlat(mercator){

var lonlat={x:0,y:0}

var x = mercator.x/20037508.34*180

var y = mercator.y/20037508.34*180

y= 180/Math.PI*(2*Math.atan(Math.exp(y*Math.PI/180))-Math.PI/2)

lonlat.x = x

lonlat.y = y

return lonlat

}

// answered by : [email protected]