相关疑难解决方法(0)

什么是JavaScript的最高整数值,数字可以达到而不会丢失精度?

这是由语言定义的吗?是否有定义的最大值?在不同的浏览器中是不同的?

javascript browser math cross-browser

923
推荐指数
13
解决办法
48万
查看次数

大数字上的JSON.Stringify()会改变数值吗?

我有跟返回对象的WCF服务操作longList<string>属性.当我在WCF应用程序中测试操作时,一切正常,值正确.但是,我需要能够使用jQuery和JSON格式调用服务.long当我在OnSucceed函数中读回属性时,属性的值显然会发生变化.

经过搜索,我发现JSON.stringify变化很大.所以在这样的代码中:

alert(JSON.stringify(25001509088465005));
Run Code Online (Sandbox Code Playgroud)

......它会显示价值25001509088465004.

怎么了?

在这里演示:http://jsfiddle.net/naveen/tPKw7/

javascript jquery json

6
推荐指数
1
解决办法
1647
查看次数

在javascript中使用API​​,使用高于JS max整数的ID

我正在构建一个Node后端,它从Vine API中提取数据,并将其返回到我的前端.员额和用户的ID是Number类型的,他们经常超过JavaScript可以支持的最大整数,根据这个问题.

API的示例ID是934416748524998656.当我JSON.parse在前端使用时,它用0替换最后2位数字,因为它无法读取高数字当我尝试使用特定ID与API通信时会导致问题,因为它现在无法识别ID .

有没有什么东西,没有用另一种语言创建新服务,我可以做些什么来处理这些ID?我尝试使用toString()将数字解释为字符串,但这只是创建了一个已经格式错误的字符串.

谢谢你的帮助

javascript type-conversion node.js

5
推荐指数
1
解决办法
100
查看次数

javascript大整数因为精度?(为什么?)

如果你在chrome或safari中键入78764357878563812,那么你就得到了

如果你这样做

for(var i = 0; i < 30; i++){console.log(i + " == " + 78764357878563800 + " ? ");console.log((78764357878563790+i) == 78764357878563800);}
Run Code Online (Sandbox Code Playgroud)

你开始比较从78764357878563790到78764357878563790 + 29的值,所以...就像你看到你运行它,你从i = 8到24得到真实.

所以我不知道我是不是得到它,但不应该存在maxint(我不知道)和maxint-1 ??? 然后最大不同于maxint-1?

我想这是精确的像浮动数字...但是,这不应该只是命中浮动数字,例如数字+ 1总是给成功者?(所以在上面的例子中,如果i = 78764357878563790并添加i ++,那么你进入一个无限循环.

我事先知道,对于浮点,数字之间存在这种类型的间距,但是从未遇到整数不能表示i + 1和i-1的情况(我总是认为无符号maxint + 1会携带并给出0).

任何建议:

  • 这是最大数量,js中的前数是多少.
  • 如何处理或知道何时整数的这种行为将开始发生.
  • 如何处理这个大数字,比这更大,这将是很好的.

javascript precision safari google-chrome

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

尝试使用Java解析JSON字符串时发生错误

我正在尝试使用java解析JSON字符串。我不知道该怎么做,我在互联网上搜索了很多东西,但有了一些主意。有了我,我有构建代码,但它不起作用。当尝试执行我的代码时,它将引发错误。我无法解决错误。

看到下面是我的代码:

import java.util.*;
import java.io.*;
import org.json.simple.JSONArray;
import org.json.simple.JSONObject;
import org.json.simple.parser.JSONParser;
import org.json.simple.parser.ParseException;

public class JSOnNStringParsing {

    public static void main(String[] args) {        
        try
        {
            BufferedReader read=new BufferedReader(new FileReader("D:\\Kavi works\\OutputFiles\\JSON_String.txt"));
            String line=read.readLine();
            while(line!=null)
            {
                System.out.println("Line = "+line);
                JSONParser jsonParser = new JSONParser();
                JSONObject jsonObject = (JSONObject) jsonParser.parse(line);
                System.out.println("Read : "+jsonObject.get("read"));
                JSONArray network = (JSONArray) jsonObject.get("network");
                Iterator<String> iterator = network.iterator();
                while (iterator.hasNext()) {
                    System.out.println(iterator.next());
                }
            }
        }
        catch(Exception e)
        {
            System.out.println("Error occured :"+e);
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

我的JSON字符串在该文件中:

{"read":"2015-05-07T19:30:48.165009273+05:30","network":{"rx_bytes":11124,"rx_packets":116,"rx_errors":0,"rx_dropped":0,"tx_bytes":648,"tx_packets":8,"tx_errors":0,"tx_dropped":0},"cpu_stats":{"cpu_usage":{"total_usage":157158138204,"percpu_usage":[157158138204],"usage_in_kernelmode":49530000000,"usage_in_usermode":58420000000},"system_cpu_usage":258964110000000,"throttling_data":{"periods":0,"throttled_periods":0,"throttled_time":0}},"memory_stats":{"usage":73969664,"max_usage":74600448,"stats":{"active_anon":73928704,"active_file":4096,"cache":86016,"hierarchical_memory_limit":18446744073709551615,"inactive_anon":4096,"inactive_file":32768,"mapped_file":32768,"pgfault":62880,"pgmajfault":0,"pgpgin":34656,"pgpgout":34482,"rss":73883648,"rss_huge":67108864,"total_active_anon":73928704,"total_active_file":4096,"total_cache":86016,"total_inactive_anon":4096,"total_inactive_file":32768,"total_mapped_file":32768,"total_pgfault":62880,"total_pgmajfault":0,"total_pgpgin":34656,"total_pgpgout":34482,"total_rss":73883648,"total_rss_huge":67108864,"total_unevictable":0,"total_writeback":0,"unevictable":0,"writeback":0},"failcnt":0,"limit":2099310592},"blkio_stats":{"io_service_bytes_recursive":[],"io_serviced_recursive":[],"io_queue_recursive":[],"io_service_time_recursive":[],"io_wait_time_recursive":[],"io_merged_recursive":[],"io_time_recursive":[],"sectors_recursive":[]}}
Run Code Online (Sandbox Code Playgroud)

当我执行代码时,它会引发如下错误:

Line …
Run Code Online (Sandbox Code Playgroud)

java json

2
推荐指数
1
解决办法
2098
查看次数