我有一个用vb编码的函数。我正在尝试将它转换为Javascript
VB
Public Function Decrypt(ByVal s As String) As String
Dim Total As String
Dim Tmp As String
For i = 1 To Len(s)
Tmp = Mid(s, i, 1)
Tmp = Asc(Tmp) - 15
Tmp = Chr(Tmp)
Total = Total & Tmp
Next i
Decrypt = Total
End Function
到目前为止,这就是我的
function decrypt( s ) {
let tmp = ''
let total = ''
for ( let i = 1; i < s.length; i ++) {
tmp = s.substring(i, 1)
tmp = tmp.charCodeAt(0) - 15
tmp = String.fromCharCode(tmp)
total += total + tmp
}
return total
}
我在total += total + tmp
线上得到错误RangeError: Invalid string length
,我该如何修复此功能
这是精确翻译。在excel VBA中测试。
function decrypt(s) {
var total = ""
for (var i = 1; i <= s.length; i++) {
var tmp = s.substring(i - 1, i);
total += String.fromCharCode(tmp.charCodeAt(0) - 15);
}
return total
}
console.log(decrypt("hello"))