JavaScript的。将数字值分配给字母并根据用户的字母输入执行计算

时间:2016-02-14 00:23:35

标签: javascript pdf echosign

我想为字母赋值:A = 0,B = 1,C = 2,D = 3,E = 4,F = 5,G = 6,H = 7,I = 8,J = 9并从文本字段中获取用户输入,例如'FAA',并连接用户输入的数值,在示例FAA中,值将为500,然后能够取该值,例如500(或任何值 - 如果输入为ECA,则值为420)并使用它进行计算,例如2000 - (FAA的值)= 1500.

这是一个EchoSign PDF,它使用计算字段中的JavaScript公式,需要使用用户输入的“促销代码”值,例如FAA,并从全价字段中扣除该金额,然后显示新的金额在折扣价格字段中。

2 个答案:

答案 0 :(得分:0)

创建一个具有属性a,b,c等的对象。这将充当地图。 E.g。

var map = {
  a: 0,
  b: 1, ...}

现在迭代你试图从

创造价值的字符串
var ans = 0;
for (var i = 0; i < str.length; ++i) {
  ans = ans * 10 + map[str[i]];
}

如果字符串太长,您可能需要检查ans的值边界

答案 1 :(得分:0)

JavaScript具有将字符串处理到某些范围(如数组)的功能。

因此,您可以设置主字符串:

var masterstring = "abcdefghijklmnopqrstuvwxyz" ;

然后循环遍历你的instring并读出masterstring中字符的索引

var instring ; // has a value to be assigned to 
var restring = " " // the result goes into this variable
for (var i = 0 ; i < instring.length ; i++) {
restring += masterstring.indexOf(instring.charAt(i).toLowerCase()) ;
}

这会强制restring成为一个字符串;将其更改为数字将是直截了当的。