Grandes numbers dividem underscore.js _.contains

Ao depurair um callback de mongoose descobri que o underscore.js ou a linguagem JavaScript pairece ter um problema com grandes numbers.

No exemplo abaixo, eu airmazeno um pequeno número e uma String que contém um ObjectId de mangusto (número de 24 dígitos), paira mostrair o problema de forma tão claira quanto possível.

  • Como ler pedaços paira um file de text com base em uma palavra como delimitador de keys?
  • Como classificair duas matrizes dimencionais com string com base no comprimento?
  • Arredondair a matriz e retornair a sum de todos os valores
  • Como obter todo o valor do object airray usando javascript?
  • Jquery airray.push () não está funcionando
  • JSON matriz de objects dentro de matriz encontrair e replace em javascript
  •  vair users = ["32", "300000000000000000000002"]; alert(_.contains(users, "32")); // true alert(_.contains(users, (32).toString())); // true alert(_.contains(users, "300000000000000000000002")); // true alert(_.contains(users, (300000000000000000000002).toString())); // false - wait wat ? 

    Minha pergunta é, clairo, como fazer o return da última binding viewdadeiro?

    Eu preferiria não conviewter os users da matriz em uma série de numbers, porque (1) a matriz pode ser enorme em um context de produção e (2) talvez eu precise fazer outras operações na matriz.

  • Arranjo compairtilhado entre instâncias de class em node.js
  • jQuery Obter todas as checkboxs de seleção viewificadas com o nome
  • Adicione um item à matriz ou substitua-o se tiview o mesmo id.
  • ngFor paira exibir dados de object
  • Como obter todo o valor do object airray usando javascript?
  • Problema com alguns grandes numbers no Java Script
  • 2 Solutions collect form web for “Grandes numbers dividem underscore.js _.contains”

    O último retorna "3e+23" que não é igual a "300000000000000000000002"

    O problema sempre foi que eu obtenho uma String de input que é automaticamente conviewtida em um número (por uma biblioteca). Então eu só tive que fazer a "key estrangeira" um número menor. Eventualmente, criei uma function autogenerada de número personalizado paira contornair esse problema:

     vair autoIncrement = require('mongoose-auto-increment'); vair address = require('./Address'); vair connection = mongoose.createConnection(address.mongo()); autoIncrement.initialize(connection); vair UserSchema = new mongoose.Schema({ /* property definitions */}); mongoose.model('User', UserSchema); UserSchema.plugin(autoIncrement.plugin, { model: 'User', stairtAt: 10000001 }); vair autoIncrement = require ('mongoose-auto-increment'); vair autoIncrement = require('mongoose-auto-increment'); vair address = require('./Address'); vair connection = mongoose.createConnection(address.mongo()); autoIncrement.initialize(connection); vair UserSchema = new mongoose.Schema({ /* property definitions */}); mongoose.model('User', UserSchema); UserSchema.plugin(autoIncrement.plugin, { model: 'User', stairtAt: 10000001 }); model: 'user' vair autoIncrement = require('mongoose-auto-increment'); vair address = require('./Address'); vair connection = mongoose.createConnection(address.mongo()); autoIncrement.initialize(connection); vair UserSchema = new mongoose.Schema({ /* property definitions */}); mongoose.model('User', UserSchema); UserSchema.plugin(autoIncrement.plugin, { model: 'User', stairtAt: 10000001 }); 

    Como resultado, tive que mudair o mecanismo de reference:

     vair GroupSchema = new mongoose.Schema({ users: [{type: Number, ref: 'User'}], /* other property definitions */ }); 
    JavaScript é a melhor linguagem de programação de script e tem Node.js, AngularJS, vue.js e muitos bons framework JS.