javascript:将int转换为char
我有一个小脚本,读取操纵杆的delta X和Y,然后将它们转换为角色: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
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”前面加“-”对吗?