[JAVASCRIPT] Alternative à eval() ?

SwordLava
2022-06-20 16:41:43

https://image.noelshack.com/fichiers/2022/25/1/1655735810-eval.png

J'ai fait une calculatrice mais à ce qu'il paraît eval() est fortement déconseillé, mais j'arrive pas à trouver d'alternative ça me rend fouhttps://image.noelshack.com/fichiers/2020/52/6/1608985783-ahi-triangle.png

Vous avez une idée ?https://image.noelshack.com/fichiers/2020/52/6/1608985783-ahi-triangle.png

SwordLava
2022-06-20 16:44:14

https://image.noelshack.com/fichiers/2020/52/6/1608985783-ahi-triangle.png

Jean-OCaml
2022-06-20 16:45:34

Il doit y avoir plein de bilbliothèques qui permettent de parser et d'évaluer des expressions simples :ok:

Si c'est des plus costauds, y'a math.js par exemple :

https://mathjs.org/docs/expressions/parsing.html

SwordLava
2022-06-20 16:47:27

Le 20 juin 2022 à 16:45:34 :
Il doit y avoir plein de bilbliothèques qui permettent de parser et d'évaluer des expressions simples :ok:

Si c'est des plus costauds, y'a math.js par exemple :

https://mathjs.org/docs/expressions/parsing.html

Je sais pas quoi faire avec ton lien, je suis trop con faut tout m'expliquerhttps://image.noelshack.com/fichiers/2020/52/6/1608985783-ahi-triangle.png

SwordLava
2022-06-20 16:52:13

https://image.noelshack.com/fichiers/2020/52/6/1608985783-ahi-triangle.png

SwordLava
2022-06-20 16:54:18

Vous êtes où les famoso dev à 7k/mois ? Quand on demande un truc il y a personnehttps://image.noelshack.com/fichiers/2020/52/6/1608985783-ahi-triangle.png

Jean-OCaml
2022-06-20 16:56:00

Le 20 juin 2022 à 16:47:27 :

Le 20 juin 2022 à 16:45:34 :
Il doit y avoir plein de bilbliothèques qui permettent de parser et d'évaluer des expressions simples :ok:

Si c'est des plus costauds, y'a math.js par exemple :

https://mathjs.org/docs/expressions/parsing.html

Je sais pas quoi faire avec ton lien, je suis trop con faut tout m'expliquerhttps://image.noelshack.com/fichiers/2020/52/6/1608985783-ahi-triangle.png

Si tu ne sais pas il y a peut-être encore plus simple :rire:

http://jsfromhell.com/classes/math-parser

Ici il y a tout le code à copier/coller dans ton js et un exemple simple

var parser = new MathParser()
alert(parser.parse("2+2"))

ghostfag156953
2022-06-20 16:56:59

Le 20 juin 2022 à 16:54:18 :
Vous êtes où les famoso dev à 7k/mois ? Quand on demande un truc il y a personnehttps://image.noelshack.com/fichiers/2020/52/6/1608985783-ahi-triangle.png

Commence par apprendre le python branlotin

SwordLava
2022-06-20 17:09:45

Le 20 juin 2022 à 16:56:00 :

Le 20 juin 2022 à 16:47:27 :

Le 20 juin 2022 à 16:45:34 :
Il doit y avoir plein de bilbliothèques qui permettent de parser et d'évaluer des expressions simples :ok:

Si c'est des plus costauds, y'a math.js par exemple :

https://mathjs.org/docs/expressions/parsing.html

Je sais pas quoi faire avec ton lien, je suis trop con faut tout m'expliquerhttps://image.noelshack.com/fichiers/2020/52/6/1608985783-ahi-triangle.png

Si tu ne sais pas il y a peut-être encore plus simple :rire:

http://jsfromhell.com/classes/math-parser

Ici il y a tout le code à copier/coller dans ton js et un exemple simple

var parser = new MathParser()
alert(parser.parse("2+2"))

Rien capté non plushttps://image.noelshack.com/fichiers/2020/52/6/1608985783-ahi-triangle.png

RoiDesMarlous
2022-06-20 17:10:32

Code le toi même bordel tu trouves l'algo opti facilement

SwordLava
2022-06-20 17:10:53

Le 20 juin 2022 à 17:10:32 :
Code le toi même bordel tu trouves l'algo opti facilement

Bah fais-le si t'es si malinhttps://image.noelshack.com/fichiers/2020/52/6/1608985783-ahi-triangle.png

SwordLava
2022-06-20 17:11:15

Si je demande de l'aide c'est que j'arrive pas à le faire moi-mêmehttps://image.noelshack.com/fichiers/2020/52/6/1608985783-ahi-triangle.png

Miracl3
2022-06-20 17:13:43

la fonction eval() est dangereuse uniquement si t'as pas protégé des XSS (dom-based particulièrement)

En 2022 ne pas être protégé contre les XSS c'est sélection naturelle, donc tu te met au boulot pour contourner le problème en ajoutant les attributs nécessaires dans les entêtes HTTP

RetourDeNibiru
2022-06-20 17:13:44

ben tu fais l'opération avec les variables

parce que là ouais avec inspect element on peut te foutre dans la merde ahi

Antidev
2022-06-20 17:15:13

Le 20 juin 2022 à 17:13:44 :
ben tu fais l'opération avec les variables

parce que là ouais avec inspect element on peut te foutre dans la merde ahi

Qu'est ce que tu raconte l'ahurin

Sinon pour l'OP :
Utilise une lib du style mathjs et utilise math.evaluate, ca va te protéger de ce genre de soucis en te donnant une implémentation safe

Chanclitude
2022-06-20 17:16:49

n'utilise aucune librairie

traite le calcul formel toi même, c'est un bon exo

RetourDeNibiru
2022-06-20 17:18:10

Le 20 juin 2022 à 17:15:13 Antidev a écrit :

Le 20 juin 2022 à 17:13:44 :
ben tu fais l'opération avec les variables

parce que là ouais avec inspect element on peut te foutre dans la merde ahi

Qu'est ce que tu raconte l'ahurin

Sinon pour l'OP :
Utilise une lib du style mathjs et utilise math.evaluate, ca va te protéger de ce genre de soucis en te donnant une implémentation safe. T'as également la possibilité de parse pour avoir les éventuelles erreurs etc... Et impossible de XSS dans ce cas.
https://mathjs.org/docs/expressions/parsing.html

Impossibilité de XSS alors qu'il eval un innerText ? T'es pas prêt toihttps://image.noelshack.com/fichiers/2016/30/1469541952-risitas182.png

cesarjvc11
2022-06-20 17:18:31

Déjà tu vas me faire un input = display.innerText au début du code comme ça ton code va s'alléger

fan2ktalys
2022-06-24 04:06:26

Le 20 juin 2022 à 17:18:10 :

Le 20 juin 2022 à 17:15:13 Antidev a écrit :

Le 20 juin 2022 à 17:13:44 :
ben tu fais l'opération avec les variables

parce que là ouais avec inspect element on peut te foutre dans la merde ahi

Qu'est ce que tu raconte l'ahurin

Sinon pour l'OP :
Utilise une lib du style mathjs et utilise math.evaluate, ca va te protéger de ce genre de soucis en te donnant une implémentation safe. T'as également la possibilité de parse pour avoir les éventuelles erreurs etc... Et impossible de XSS dans ce cas.
https://mathjs.org/docs/expressions/parsing.html

Impossibilité de XSS alors qu'il eval un innerText ? T'es pas prêt toihttps://image.noelshack.com/fichiers/2016/30/1469541952-risitas182.png

Teste

Infos
Gestion du forum

contact@geevey.com

API disponible. Utilisez le paramètre "api" en GET, peu importe le contenu, sur une page du site.

Notes

    ⚠️ Les archives de novembre sont désormais disponibles.
Non-assumage
    Personne n'a pas assumé de topic pour le moment.