JavaScript - fromCharCode不是函数吗?
问题描述:
我试图转换小数为文本这样的:JavaScript - fromCharCode不是函数吗?
function decimalToText(str){
var arr = [];
for (var i = 0, l = str.length; i < l; i ++) {
var text = str.fromCharCode(i);
arr.push(text);
}
return arr.join('');
}
所以我想 '104 101 108 108 111 32 119 111 114 108 100' 转换到 '世界你好',例如
但我不断收到Uncaught TypeError: str.fromCharCode is not a function
任何人都知道我要去哪里错了吗?
答
你就近了。如果你在为fromCharCode()文件看看,你会先看到你被错误地称之为
因为fromCharCode()是字符串的静态方法,你总是把它作为使用String.fromCharCode(),而不是一个你创建的String对象的方法。
您可以在Unicode字符和循环通过他们的阵传球,例如:
function decimalToText(unicodeArray){
var arr = [];
for (var index in unicodeArray) {
var text = String.fromCharCode(unicodeArray[index]);
arr.push(text);
}
return arr.join('');
}
console.log(decimalToText([104, 101, 108, 108, 111, 32, 119, 111, 114, 108, 100]));
甚至清洁剂(无环),你可以使用apply function
function decimalToText(unicodeArray){
return String.fromCharCode.apply(null, unicodeArray);
}
console.log(decimalToText([104, 101, 108, 108, 111, 32, 119, 111, 114, 108, 100]));
或者用ES6,您可以使用spread operator
function decimalToText(unicodeArray){
return String.fromCharCode(...unicodeArray);
}
console.log(decimalToText([104, 101, 108, 108, 111, 32, 119, 111, 114, 108, 100]));
This is String.fromCharCode(number).check this https://www.w3schools.com/jsref/jsref_fromCharCode.asp – Debabrata
因为它不是一个函数,它不是所有字符串的原型,它存在于字符串的构造函数中 – adeneo
什么是你期望通过这个功能,你期望什么?请举一个例子 –