Tabla de contenido
Especificación de descripción de texto de error
descripción
La función errors.New () devuelve un tipo de error basado en la cadena entrante.
Sintaxis y parámetros
Necesidad de importar errores de paquetes nativos de Go
import errors
Firma de función:
func New(text string) error
nombre | sentido |
texto | Una cadena que describe el mensaje de error. |
valor de retorno
La función errors.New () devuelve un tipo de error.
Ejemplo de uso
Como se muestra en el siguiente código, defina una división de función, si número2 es 0, se devuelve un error, lo que indica que el divisor es 0.
func division(number1, number2 int) (float64, error) {
if number2 == 0 {
return 0.0, errors.New("division by zero")
}
return float64(number1) / float64(number2), nil
}
Precauciones
Valor de error
Incluso si el texto es el mismo, cada llamada a la función errors.New () devolverá un valor de error diferente. Por lo tanto, el tipo de error no se puede comparar directamente.
package main
import (
"errors"
"fmt"
)
func main() {
err1 := errors.New("division by zero")
err2 := errors.New("division by zero")
err3 := errors.New("unknown error")
fmt.Println(err1 == err2) // false
fmt.Println(err1 == err3) // false
fmt.Println(err1.Error() == err2.Error()) // true
fmt.Println(err1.Error() == err3.Error()) // false
}
Especificación de descripción de texto de error
La cadena de error no debe escribirse en mayúscula ni terminar con un signo de puntuación. Sin embargo, incluso si la cadena se pasa en contra de esta especificación, Go no informará de un error.