JavaScript 中的 64 位整数,来自 Mysql 请求
64bit integer in JavaScript, from Mysql request
我将这个数字 76561197993482001(64 位整数)作为 bigint(20) 存储在我的数据库中。
但是当我尝试使用 :
获取它时
//node.js
query('SELECT * FROM table',function(err,rows){
console.log(rows[0]["id"]);// I get 76561197993482000
});
我打错电话了。我猜这是因为js不能处理64位变量。
我知道 js 中有 bigint 的库,但是这个数字直接存储在 rows 变量中。那我该怎么办?
有没有办法在我发送请求时将其转换为文本?
根据您使用的中间件,它们中的大多数都有支持大数的设置,最常见的中间件为此使用 supportBigNumbers
选项
var mysql = require('mysql');
var connection = mysql.createConnection({
host : 'example.org',
user : 'bob',
password : 'secret',
supportBigNumbers : true
});
我将这个数字 76561197993482001(64 位整数)作为 bigint(20) 存储在我的数据库中。
但是当我尝试使用 :
获取它时//node.js
query('SELECT * FROM table',function(err,rows){
console.log(rows[0]["id"]);// I get 76561197993482000
});
我打错电话了。我猜这是因为js不能处理64位变量。
我知道 js 中有 bigint 的库,但是这个数字直接存储在 rows 变量中。那我该怎么办?
有没有办法在我发送请求时将其转换为文本?
根据您使用的中间件,它们中的大多数都有支持大数的设置,最常见的中间件为此使用 supportBigNumbers
选项
var mysql = require('mysql');
var connection = mysql.createConnection({
host : 'example.org',
user : 'bob',
password : 'secret',
supportBigNumbers : true
});