javascript:将int转换为char

javascript:将int转换为char,javascript,casting,Javascript,Casting,我有一个小脚本,读取操纵杆的delta X和Y,然后将它们转换为角色: var a =deltaX.toString(); var b =deltaY.toString(); outputEl.innerHTML = '<b>Result:</b> ' + a + b; var comando = a + b ; var a=deltaX.toString(); var b=deltaY.toString(); outputEl.innerHT

我有一个小脚本,读取操纵杆的delta X和Y,然后将它们转换为角色:

var a =deltaX.toString();
var b =deltaY.toString();
outputEl.innerHTML  = '<b>Result:</b> '
    + a
    + b;    
var comando = a + b ;
var a=deltaX.toString();
var b=deltaY.toString();
outputEl.innerHTML='结果:'
+a
+b;
var comando=a+b;
问题是我需要小于10和-10的数字,为2个字符,例如5,为05。在小于10和-10的数字中加零的好方法是什么;
var a;

if (deltaX < 10) {
  // one digit
  a = '0' + deltaX;
} else {
  a = deltaX.toString();
}
如果(deltaX<10){ //一位数 a='0'+deltaX; }否则{ a=deltaX.toString(); } 注意,这不处理否定部分,但我展示了一个概念证明。由于您的数字太小,您可以使用一个简单的
if
语句来填充,而不是使用气密的方法来填充零。

var a;
如果(deltaX<10){
//一位数
a='0'+deltaX;
}否则{
a=deltaX.toString();
}

注意,这不处理否定部分,但我展示了一个概念证明。由于您的数字非常小,因此可以使用简单的
if
语句填充零,而不是使用气密的方法填充零。

通过查看长度属性,可以使用三元运算符(内联if)进行填充:

outputEl.innerHTML  = '<b>Result:</b> '
            + a.length > 1 ? a : '0' + a
            + b.length > 1 ? b : '0' + b;
outputEl.innerHTML='Result:'
+长度>1?a:'0'+a
+长度>1?b:'0'+b;

通过查看length属性,可以使用三元运算符(内联if)执行此操作:

outputEl.innerHTML  = '<b>Result:</b> '
            + a.length > 1 ? a : '0' + a
            + b.length > 1 ? b : '0' + b;
outputEl.innerHTML='Result:'
+长度>1?a:'0'+a
+长度>1?b:'0'+b;

一系列简单的
if
条件应该有效。一系列简单的
if
条件应该有效。code golf<代码>变量a=deltaX<10?'0'+deltaX:deltaX.toString()该代码适用于正数。对于负数,第一个“0”后面会显示“-”,所以我想我必须将数字设为正数,然后在“0”前面加“-”,对吗?代码<代码>变量a=deltaX<10?'0'+deltaX:deltaX.toString()该代码适用于正数。对于负数,第一个“0”后面会显示“-”,所以我想我必须将数字设为正数,然后在“0”前面加“-”对吗?