为什么 String.fromCharCode() 不适用于变量作为参数?
Why String.fromCharCode() does not work with variable as parameter?
我注意到 String.fromCharCode()
不能使用变量作为参数。
下面是一些示例代码:
var x = atob('ODAsNjUsODMsODMsODcsNzksODIsNjgsOTUsNDgsNDk=');
console.log('\''+x.replace(new RegExp(',', 'g'), '\',\'')+'\'');
console.log(String.fromCharCode('\'' + x.replace(new RegExp(',', 'g'), '\',\'') + '\''));
现在这将计算为
'80','65','83','83','87','79','82','68','95','48','49'
这是 String.fromCharCode()
的正确参数链
因为这有效:
console.log(String.fromCharCode('80','65','83','83','87','79','82','68','95','48','49'));
为什么它不接受变量作为参数?
我是不是做错了什么?
在:
var x = atob('ODAsNjUsODMsODMsODcsNzksODIsNjgsOTUsNDgsNDk=');
console.log(String.fromCharCode('\'' + x.replace(new RegExp(',', 'g'), '\',\'') + '\''));
'\''+x.replace(new RegExp(',', 'g'), '\',\'')+'\''
产生一个字符串。它只是一个文本 '80','65','83','83','87','79','82','68','95','48','49'
。如果您将此字符串传递给 String.fromCharCode
... 绝对不是您想要的。 JavaScript 应该如何将其转换为 one 数字?
String.fromCharCode('80','65','83','83','87','79','82','68','95','48','49')
在这里你传递了多个参数。多个字符串。而且它们中的每一个都可以很容易地转换成一个数字。
您可以做的是简单地在 ,
处拆分字符串,然后展开结果数组:(ECMAScript 6)
String.fromCharCode(...x.split(','));
您可以只传递一个数组:
String.fromCharCode.apply(null, ['80','65','83','83','87','79','82','68','95','48','49'])
这里有一个类似的..同样的问题:
Can I pass an array into fromCharCode
我注意到 String.fromCharCode()
不能使用变量作为参数。
下面是一些示例代码:
var x = atob('ODAsNjUsODMsODMsODcsNzksODIsNjgsOTUsNDgsNDk=');
console.log('\''+x.replace(new RegExp(',', 'g'), '\',\'')+'\'');
console.log(String.fromCharCode('\'' + x.replace(new RegExp(',', 'g'), '\',\'') + '\''));
现在这将计算为
'80','65','83','83','87','79','82','68','95','48','49'
这是 String.fromCharCode()
的正确参数链
因为这有效:
console.log(String.fromCharCode('80','65','83','83','87','79','82','68','95','48','49'));
为什么它不接受变量作为参数?
我是不是做错了什么?
在:
var x = atob('ODAsNjUsODMsODMsODcsNzksODIsNjgsOTUsNDgsNDk=');
console.log(String.fromCharCode('\'' + x.replace(new RegExp(',', 'g'), '\',\'') + '\''));
'\''+x.replace(new RegExp(',', 'g'), '\',\'')+'\''
产生一个字符串。它只是一个文本 '80','65','83','83','87','79','82','68','95','48','49'
。如果您将此字符串传递给 String.fromCharCode
... 绝对不是您想要的。 JavaScript 应该如何将其转换为 one 数字?
String.fromCharCode('80','65','83','83','87','79','82','68','95','48','49')
在这里你传递了多个参数。多个字符串。而且它们中的每一个都可以很容易地转换成一个数字。
您可以做的是简单地在 ,
处拆分字符串,然后展开结果数组:(ECMAScript 6)
String.fromCharCode(...x.split(','));
您可以只传递一个数组:
String.fromCharCode.apply(null, ['80','65','83','83','87','79','82','68','95','48','49'])
这里有一个类似的..同样的问题:
Can I pass an array into fromCharCode