Esiste una funzione matematica in JavaScript che converte i numeri in valori positivi?Convertire un numero negativo in uno positivo in JavaScript
risposta
È possibile utilizzare questo ...
Math.abs(x)
unsigned_value = Math.abs(signed_value);
Math.abs(x)
o se si è certi il valore è negativo prima della conversione appena anteporre un normale segno meno: x = -x
.
Il segno meno (-) può convertire numeri positivi in numeri negativi e numeri negativi in numeri positivi. x=-y
è zucchero visivo per x=(y*-1)
.
var y = -100;
var x =- y;
Che dire di x *= -1
? Mi piace la sua semplicità.
+1 per semplicità e lavoro in entrambi i modi ad es.: Neg2pos e pos2neg –
Mentre questo è semplice, presuppone che il numero sia sempre negativo. Se il caso d'uso è tale, allora è fantastico. Altrimenti, consiglierei cautela. – myusuf
Non sono d'accordo @myusuf. Qualsiasi numero che sia 'x' sarà capovolto. Se 'x = 23' e viene spinto in quell'equazione,' x' sarà uguale a '-23'. Nelle parole di Mr. Escalante, "Un tempo positivo un negativo è uguale a un negativo, un negativo un negativo è uguale a un positivo". ... "Come raggiungo questi kiiiiiiidi ?!" – ExcellentSP
var posNum = (num < 0) ? num * -1 : num; // if num is negative multiple by negative one ...
Trovo questa soluzione facile da capire.
Se vuoi scrivere codice interessante che nessun altro potrà mai aggiornare, provate questo:
~ --x
Questo non funzionerà con i punti fluttuanti però ... e anche il valore di x cambierà. –
Suppongo che se non riesci a cambiare x: ~ --x; ++ x – Kyle
Kyle, l'operatore '~' converte il numero in un intero a 32 bit. Se hai un float come input, viene hosed. –
ho fatto qualcosa di simile me.
num<0?num*=-1:'';
controlla se il numero è negativo e se lo è, si moltiplicano con -1 Questo non restituisce un valore, il suo fino a voi se catturarlo. Nel caso in cui si desidera assegnare a qualcosa, probabilmente si dovrebbe fare qualcosa di simile:
var out = num<0?num*=-1:num; //I think someone already mentioned this variant.
Ma dipende realmente che cosa il vostro obiettivo è. Per me è stato semplice, positivo se negativo, altrimenti non fare nulla. Da qui il "" nel codice. In questo caso ho usato terziario operatore motivo ho voluto, potrebbe benissimo essere:
if(num<0)num*=-1;
ho visto la soluzione bit a bit qui e ha voluto commentare su questo uno troppo.
~--num; //Drawback for this is that num original value will be reduced by 1
Questo soultion è molto di fantasia, a mio parere, si potrebbe riscrivere così:
~(num = num-1);
In termini semplici, prendiamo il numero negativo, prendiamo un lontano da esso e quindi bit a bit capovolgerlo . Se avessimo invertito bit per bit normalmente avremmo ottenuto un valore 1 troppo piccolo. È anche possibile fare questo:
~num+1; //Wont change the actual num value, merely returns the new value
che farà lo stesso, ma si inverte e poi aggiungere 1 al numero positivo. Anche se non puoi fare questo:
~num++; //Wont display the right value.
che non funziona causa di precedence, operatori in forma suffissa quali num++
sarebbero valutati prima ~ e la ragione del prefisso ++num
wouldnt lavorare anche se è sulla stessa precedenza NOT bit a bit (~), è perché viene valutato da destra a sinistra. Ho provato a scambiarli ma sembra che il prefisso sia un po 'schizzinoso rispetto a NOT bit a bit. Il +1 funzionerà perché '+' ha una precedenza più alta e verrà valutato in seguito.
Ho trovato che la soluzione era piuttosto divertente e ho deciso di espanderci perché era stata appena lanciata e postare le persone a guardarlo probabilmente la ignoravano. Anche se sì, non funzionerà con i galleggianti.
Le mie speranze sono che questo post non si sia spostato dalla domanda originale. :/
JavaScript - senza l'utilizzo di funzioni:
var x=-9;
var x=((x*x)**0.5);
console.log(x);
NOTA: non può lavori nei vecchi browser.
So che questo è un po 'tardi, ma per le persone alle prese con questo, è possibile utilizzare
per la conversione da negativo a positivo
let x = -54;
let result = Math.abs(x);
per la conversione di positivo a negativo
let x = 54;
let result = -Math.abs(x)
Oppure si potrebbe semplicemente fare questo metodo breve.
per la conversione di positivo a negativo & Vice Versa
let x = -23;
let result = -(23)
È possibile utilizzare ~ operatore che converte logicamente il numero ai risultati negativi e aggiunge 1 al negativo:
var x = 3;
x = (~x + 1);
console.log(x)
// result = -3
mio approccio minimale
Per convertire numero negativo a positivo & viceversa
var num = -24;
num -= num*2;
console.log(num)
// result = 24
so un altro modo per farlo.Questa tecnica funziona negativo a positivo & Vice Versa
var x = -24;
var result = x * -1;
Vice Versa:
var x = 58;
var result = x * -1;
CODICE IN DIRETTA:
// NEGATIVE TO POSITIVE: ******************************************
var x = -24;
var result = x * -1;
console.log(result);
// VICE VERSA: ****************************************************
var x = 58;
var result = x * -1;
console.log(result);
// FLOATING POINTS: ***********************************************
var x = 42.8;
var result = x * -1;
console.log(result);
// FLOATING POINTS VICE VERSA: ************************************
var x = -76.8;
var result = x * -1;
console.log(result);
Questo non risponde alla domanda. dave chiede una funzione che modifichi il valore * da negativo a positivo * e * positivo a positivo *. – RaphaMex
La sua domanda dice "Esiste una funzione matematica in JavaScript che converte i numeri in valori positivi?" Non menziona il positivo con il positivo. Menziona solo il negativo con il positivo. Perché vorresti convertire il positivo in positivo. Il valore sarebbe lo stesso. –
Puoi chiedere chiarimenti in un commento sotto la domanda. Ad ogni modo, c'è una risposta accettata che è quella corretta. Puoi leggerlo di nuovo e vedere che c'è una funzione integrata che ... converte il positivo in positivo. – RaphaMex
- 1. Convertire un numero positivo a negativo in C#
- 2. Numero casuale positivo o negativo JavaScript
- 3. Converti numero negativo in numero positivo in template django?
- 4. Come si converte un numero positivo in negativo?
- 5. Ruby: modifica il numero negativo in numero positivo?
- 6. come cambiare un numero positivo in negativo e viceversa?
- 7. Funzione matematica Java per convertire da positivo int a negativo e negativo a positivo?
- 8. positivo convalida numero in jQuery
- 9. convertire il valore negativo in zero in mysql
- 10. aggiornamento positivo al valore negativo in mysql
- 11. numero Parse con prefisso positivo/negativo stringa java
- 12. JavaScript - Rilevamento della differenza tra zero positivo e zero negativo
- 13. Come posso verificare se un numero è positivo o negativo in C#?
- 14. Cambia colore del testo in base al numero intero positivo o negativo
- 15. convertire il numero in lettera javascript
- 16. Cosa significano "positivo" e "negativo" in ECMAScript? +0 e -0
- 17. Javascript per convertire stringa in numero?
- 18. Regex - Combinazione di look positivo e negativo
- 19. Git: rimuovere il comando positivo/negativo dalle linee in diff
- 20. Tracciamento dell'istogramma cumulativo con lato negativo e positivo in ggplot?
- 21. Lunghezza in bit di un numero intero positivo in Python
- 22. Controllare se un numero è positivo o negativo utilizzando operatori bit a bit
- 23. Positivo/lookahead negativo con grep e perl
- 24. WPF TextBlock Numero negativo in rosso
- 25. Convertire un numero intero in un numero float in Golang
- 26. Recupera un angolo positivo o negativo da 3 punti
- 27. Significato di bit a bit e (&) di un numero positivo e negativo?
- 28. Algoritmo per convertire qualsiasi intero positivo in un valore RGB
- 29. Converti un numero racchiuso tra parentesi (stringa) in un numero intero negativo (o float) usando Python?
- 30. come cercare il numero negativo in solr?
Si potrebbe anche prendere in considerazione ~ x + 1. È piuttosto veloce, ma non chiaro su cosa stia facendo. Preparato per mostrare la differenza: http://jsperf.com/absolute-int – omgaz
@omgaz Non sono uguali ... 'var x = -100; ~ x + 1 === 100' ma 'var x = 100; ~ x + 1 === -100'. 'Math.abs' lo rende sempre positivo mentre il complemento di quelli semplicemente inverte il segno. – jduncanator
Si potrebbe anche prendere in considerazione -x. È abbastanza veloce! – naiad