Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

600
Views
Cuando JS pasa valores numéricos como argumentos a la función Solidity, ¿por qué es mejor ponerlos entre comillas?

Definí una función en Solidity:

 function store(uint256 _favoriteNumber) public {}

Luego llame a la función con el argumento 7 en JavaScript:

 contract.store(7);

Pero, según el video de Patrick Collins JS , es mejor envolver el número 7 con citas como esta:

 contract.sotre("7");

Así que aquí hay dos cosas que me confundieron:

  1. ¿Por qué es mejor envolver el número con comillas al pasar un número a una función de contrato de solidez?
  2. ¿Por qué ehter.js puede convertir automáticamente una cadena en un número?
about 4 years ago · Juan Pablo Isaza
1 answers
Answer question

0

Javascript admite un conjunto de números más pequeño que Solidity. Específicamente, el valor seguro máximo en JS es 2^53 - 1 , mientras que el valor numérico máximo en Solidity es 2^256 .

Entonces, si, por ejemplo, transfiriera 1 token con 18 decimales, el valor decimal resultante que necesitaría pasar al contrato de Solidity es 1000000000000000000 , que está en algún lugar entre 2^59 y 2^60 , ya más alto que la caja fuerte máxima JS entero de 2^53 - 1 .

Por este motivo, ethers.js y otras bibliotecas de contratos inteligentes de JS aceptan valores numéricos como cadenas JS nativas o como una instancia de una biblioteca auxiliar llamada BigNumber , pero no como números enteros.

Nota: Algunas bibliotecas en algunas versiones pueden convertir el entero nativo en una cadena o BigNumber al principio. Pero, en general, siempre es más seguro pasar los valores no enteros.

about 4 years ago · Juan Pablo Isaza Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!