相关疑难解决方法(0)

TypeScript将字符串转换为数字

有人建议如何将字符串转换为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中,如何检查字符串是否为数字.

typescript

714
推荐指数
11
解决办法
75万
查看次数

JSLint说"缺少基数参数"; 我该怎么办?

我在这个JavaScript代码上运行了JSLint,它说:

第32行的问题字符30:缺少基数参数.

这是有问题的代码:

imageIndex = parseInt(id.substring(id.length - 1))-1;
Run Code Online (Sandbox Code Playgroud)

这有什么不对?

javascript jslint radix

498
推荐指数
7
解决办法
25万
查看次数

我如何解决JavaScript的parseInt八进制行为?

尝试在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中,该函数返回零.无论喜欢与否,这都是设计的.

解决方法有哪些?

注意:为了完整起见,我即将发布解决方案,但这是我讨厌的解决方案,所以请发布其他/更好的答案.


更新:

JavaScript标准的第5版(ECMA-262)引入了一个突破性的变化,消除了这种行为.Mozilla 写得很好.

javascript integer octal

280
推荐指数
8
解决办法
6万
查看次数

216
推荐指数
6
解决办法
9万
查看次数

添加两个数字会连接它们而不是计算总和

我正在添加两个数字,但我没有得到正确的值.

例如,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)

html javascript

167
推荐指数
8
解决办法
50万
查看次数

哪个更好,数字(x)或parseFloat(x)?

哪个更好?

我问这只是为了削减几个字节,因为我可以使用+ x而不是数字(x).parsefloat做得更好吗?

javascript optimization

128
推荐指数
3
解决办法
7万
查看次数

使用jquery添加两个变量

var a = 1;
var b = 2;
var c = a+b;
Run Code Online (Sandbox Code Playgroud)

c将显示为12; 但是我需要3

我如何使用jQuery做到这一点?

javascript jquery

28
推荐指数
4
解决办法
7万
查看次数

isNaN()与parseInt()的混淆

有一些奇怪的东西.

为什么
isNaN("")我得到False
不过,
parseInt("")我得到NaN

javascript

16
推荐指数
1
解决办法
1万
查看次数

有什么理由不使用加号运算符而不是 Number() 或 parseInt() 来返回数字?

基本上,我想弄清楚这 3 个陈述之间有什么区别?有什么理由使用其中之一而不是其他吗?第一个是不好的做法吗(它有效,但我从未见过它,而且似乎没有在任何地方教过)?

+'21';
Number('21');
parseInt('21');
Run Code Online (Sandbox Code Playgroud)

javascript

4
推荐指数
1
解决办法
1946
查看次数

Javascript else if语句不起作用

我在学校的网站上工作,我需要制作一个购物车.当我检查所要求的数量是否比可用数量更大时,即使不是,也会返回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. …

html javascript

3
推荐指数
1
解决办法
198
查看次数