有人建议如何将字符串转换为TypeScript中的数字?
var aNumber : number = "1"; // --> Error
// Could this be done?
var defaultValue = 0;
var aNumber : number = "1".toInt32(defaultValue);
// Or ..
var defaultValue = 0;
var aNumber : number = StringToInt("1", defaultValue);
Run Code Online (Sandbox Code Playgroud)
更新:我做了一些额外的困惑,我想出的最好的音乐:var aNumber:number =("1")*1;
检查字符串是否为数字在此处回答:在Typescript中,如何检查字符串是否为数字.
我在这个JavaScript代码上运行了JSLint,它说:
第32行的问题字符30:缺少基数参数.
这是有问题的代码:
imageIndex = parseInt(id.substring(id.length - 1))-1;
Run Code Online (Sandbox Code Playgroud)
这有什么不对?
尝试在JavaScript中执行以下操作:
parseInt('01'); //equals 1
parseInt('02'); //equals 2
parseInt('03'); //equals 3
parseInt('04'); //equals 4
parseInt('05'); //equals 5
parseInt('06'); //equals 6
parseInt('07'); //equals 7
parseInt('08'); //equals 0 !!
parseInt('09'); //equals 0 !!
Run Code Online (Sandbox Code Playgroud)
我刚刚学会了JavaScript认为前导零指示八进制整数的困难方式,并且由于没有"8"或"9"在base-8中,该函数返回零.无论喜欢与否,这都是设计的.
解决方法有哪些?
注意:为了完整起见,我即将发布解决方案,但这是我讨厌的解决方案,所以请发布其他/更好的答案.
更新:
parseInt(string)和Number(string)JavaScript有什么区别?
我正在添加两个数字,但我没有得到正确的值.
例如,1 + 2返回12而不是3
我在这段代码中做错了什么?
function myFunction() {
var y = document.getElementById("txt1").value;
var z = document.getElementById("txt2").value;
var x = y + z;
document.getElementById("demo").innerHTML = x;
}Run Code Online (Sandbox Code Playgroud)
<p>
Click the button to calculate x.
<button onclick="myFunction()">Try it</button>
</p>
<p>
Enter first number:
<input type="text" id="txt1" name="text1" value="1">
Enter second number:
<input type="text" id="txt2" name="text2" value="2">
</p>
<p id="demo"></p>Run Code Online (Sandbox Code Playgroud)
哪个更好?
我问这只是为了削减几个字节,因为我可以使用+ x而不是数字(x).parsefloat做得更好吗?
var a = 1;
var b = 2;
var c = a+b;
Run Code Online (Sandbox Code Playgroud)
c将显示为12; 但是我需要3
我如何使用jQuery做到这一点?
有一些奇怪的东西.
为什么
与isNaN("")我得到False
不过,
与parseInt("")我得到NaN
?
基本上,我想弄清楚这 3 个陈述之间有什么区别?有什么理由使用其中之一而不是其他吗?第一个是不好的做法吗(它有效,但我从未见过它,而且似乎没有在任何地方教过)?
+'21';
Number('21');
parseInt('21');
Run Code Online (Sandbox Code Playgroud) 我在学校的网站上工作,我需要制作一个购物车.当我检查所要求的数量是否比可用数量更大时,即使不是,也会返回true.例如3> 12是真的,我收到错误信息.我拼错了"可用"..我知道:(这是我的功能:
function add_to_cart() {
jQuery ('#modal_errors').html("");
var size = jQuery('#size').val();
var quantity = jQuery('#quantity').val();
var avaliable = jQuery('#avaliable').val();
var error = '';
var data = jQuery('#add_product_form').serialize();
if( size == '' || quantity == '' || quantity == 0 ){
error +='<p class = "text-danger text-center">You need to select a size and quantity.</p>';
jQuery('#modal_errors').html(error);
return;
}
else if(quantity > avaliable){
error +='<p class = "text-danger text-center">There are only '+avaliable+' avaliable and you asked for '+quantity+'.</p>';
jQuery('#modal_errors').html(error);
return;
}
}
Run Code Online (Sandbox Code Playgroud)
这将返回消息(对于我的情况):"只有12个可用,你要求3. …
javascript ×9
html ×2
integer ×1
jquery ×1
jslint ×1
octal ×1
optimization ×1
radix ×1
typescript ×1