标签: parseint

为什么parseInt(1/0,19)返回18?

我在JavaScript中遇到了烦人的问题.

> parseInt(1 / 0, 19)
> 18
Run Code Online (Sandbox Code Playgroud)

为什么要parseInt回来18

javascript parseint

849
推荐指数
4
解决办法
6万
查看次数

parseInt(null,24)=== 23 ......等等,什么?

好吧,所以我正在搞乱parseInt来看看它如何处理尚未初始化的值,我偶然发现了这个宝石.对于任何24或以上的基数,都会发生以下情况.

parseInt(null, 24) === 23 // evaluates to true
Run Code Online (Sandbox Code Playgroud)

我在IE,Chrome和Firefox中对它进行了测试,它们都是警告的,所以我认为它必须在某个地方的规范中.一个快速的谷歌搜索没有给我任何结果所以我在这里,希望有人可以解释.

我记得听过他说的Crockford演讲,typeof null === "object"因为疏忽导致Object和Null在内存中有一个几乎相同的类型标识符,或者沿着这些行,但我现在找不到那个视频了.

试一试:http://jsfiddle.net/robert/txjwP/

编辑校正:较高的基数返回不同的结果,32返回785077
编辑2来自zzzzBov:[24...30]:23, 31:714695, 32:785077, 33:859935, 34:939407, 35:1023631, 36:1112745


TL;博士

解释为什么parseInt(null, 24) === 23是真实的陈述.

javascript parseint

226
推荐指数
6
解决办法
2万
查看次数

Java:从char解析int值

我只是想知道是否有更好的解决方案来解析字符串中的字符中的数字(假设我们知道索引n处的字符是数字).

String element = "el5";
String s;
s = ""+element.charAt(2);
int x = Integer.parseInt(s);

//result: x = 5
Run Code Online (Sandbox Code Playgroud)

(没用说,这只是一个例子)

java int parsing char parseint

215
推荐指数
5
解决办法
53万
查看次数

为什么parseInt(8,3)== NaN和parseInt(16,3)== 1?

我正在阅读这篇文章,但我对parseInt中使用radix参数章节所写的内容感到困惑

parseInt(_,3)结果表

为什么parseInt(8, 3)NaNparseInt(16, 3)1

据我所知8和16不基地,3个数字,所以parseInt(16, 3)应该返回NaN

前十个基数为3的自然数

javascript numbers parseint radix

191
推荐指数
2
解决办法
9328
查看次数

从Javascript中的数字中删除前导零

可能重复:
在Javascript中截断字符串的前导零

在Javascript中从数字中删除前导零的最简单和跨浏览器兼容的方法是什么?

例如,如果我有一个文本框值为014或065,它应该只返回14或65

html javascript parseint

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

为什么 JavaScript 的 parseInt(0.0000005) 打印“5”?

我读过一篇关于JavaScript parseInt 的文章,其中有这个问题:

parseInt(0.5);      // => 0
parseInt(0.05);     // => 0
parseInt(0.005);    // => 0
parseInt(0.0005);   // => 0
parseInt(0.00005);  // => 0
parseInt(0.000005); // => 0

parseInt(0.0000005); // => 5
Run Code Online (Sandbox Code Playgroud)

为什么会发生这种情况?

javascript type-conversion parseint node.js typescript

65
推荐指数
2
解决办法
2万
查看次数

NaN是否等于NaN?

parseFloat("NaN")
Run Code Online (Sandbox Code Playgroud)

返回"NaN",但是

parseFloat("NaN") == "NaN"
Run Code Online (Sandbox Code Playgroud)

返回false.现在,这确实是一件好事,它确实会返回错误,但我不明白这是怎么回事.JavaScript创建者是否只是将此作为特例?因为否则我无法理解这是如何返回false的.

javascript function nan parsefloat parseint

45
推荐指数
6
解决办法
4万
查看次数

Math.random()返回大于1的值?

在JavaScript中使用随机数字时,我发现了一个令人惊讶的错误,可能是谷歌Chrome中的V8 JavaScript引擎.考虑:

// Generate a random number [1,5].
var rand5 = function() {
  return parseInt(Math.random() * 5) + 1;
};

// Return a sample distribution over MAX times.
var testRand5 = function(dist, max) {
  if (!dist) { dist = {}; }
  if (!max) { max = 5000000; }
  for (var i=0; i<max; i++) {
    var r = rand5();
    dist[r] = (dist[r] || 0) + 1;
  }
  return dist;
};
Run Code Online (Sandbox Code Playgroud)

现在,当我运行时,testRand5()我得到以下结果(当然,每次运行略有不同,您可能需要将"max"设置为更高的值以显示错误):

var d = testRand5();
d = {
  1: …
Run Code Online (Sandbox Code Playgroud)

javascript random google-chrome v8 parseint

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

如果整数以前导零开头,为什么JSON无效?

我正在将一些JSON文件导入到我的Parse.com项目中,并且我不断收到错误"无效密钥:值对".

它表示存在意外的"8".

这是我的JSON的一个例子:

}
 "Manufacturer":"Manufacturer",
 "Model":"THIS IS A STRING",
 "Description":"",
 "ItemNumber":"Number12345",
 "UPC":083456789012,
 "Cost":"$0.00",
 "DealerPrice":" $0.00 ",
 "MSRP":" $0.00 ",
}
Run Code Online (Sandbox Code Playgroud)

如果我通过删除0from "UPC":083456789012,或将其转换为JSON来更新JSON "UPC":"083456789012",变为有效.

JSON真的不能接受以问题开头的整数0,或者是否有办法解决问题?

parsing json object zero parseint

39
推荐指数
2
解决办法
3万
查看次数

将十六进制字符串解析为整数会引发NumberFormatException?

所以,在Java中,您知道如何声明这样的整数:

int hex = 0x00ff00;
Run Code Online (Sandbox Code Playgroud)

我认为你应该能够扭转这个过程.我有这个代码:

Integer.valueOf(primary.getFullHex());
Run Code Online (Sandbox Code Playgroud)

其中primary是自定义Color类的对象.它的构造函数采用Integer表示不透明度(0-99)和十六进制字符串(例如00ff00).

这是getFullHex方法:

public String getFullHex() {
    return ("0x" + hex);
}
Run Code Online (Sandbox Code Playgroud)

当我调用这个方法时,它给出了我的NumberFormatException:

java.lang.NumberFormatException: For input string: "0xff0000"
Run Code Online (Sandbox Code Playgroud)

我无法理解发生了什么.有人可以解释一下吗?

java hex integer parseint

36
推荐指数
3
解决办法
6万
查看次数