template strip_tags strings es6 ent_quotes ejemplo concatenar string go

string - strip_tags - ¿Cuál es el cero para la cadena?



template strings html (3)

func NewKey(c appengine.Context, kind, stringID string, intID int64, parent *Key) *Key

La documentación dice:

NewKey crea una nueva clave. kind no puede estar vacío. Cualquiera de los dos, stringID e intID debe ser cero . Si ambos son cero, la clave devuelta es incompleta. el padre debe ser una clave completa o nulo.

¿Cuál es el cero para la cadena?

Intenté 0 y nil , y obtuve errores como:

cannot use nil as type string in function argument


Eso es "" :

var s string fmt.Println(s=="") // prints "true"

Una cadena no puede ser nula (pero una *string puede).

Simplemente puede probar

if stringId=="" {

Para pasar una cadena cero en stringID , use

k := NewKey(c, "kind", "", 0, p)

De la especificación :

Cuando la memoria se asigna para almacenar un valor, ya sea a través de una declaración o una llamada de make o new, y no se proporciona una inicialización explícita, la memoria recibe una inicialización predeterminada. Cada elemento de dicho valor se establece en el valor cero para su tipo: falso para booleanos, 0 para enteros, 0.0 para flotantes, "" para cadenas y nulo para punteros, funciones, interfaces, sectores, canales y mapas.


en este caso cadena vacía, o puede usar NewIncompleteKey ()


var str string fmt.Println(str == "")

ponga arriba en su script, y vaya a ejecutarlo.

puedes obtener el verdadero valor predeterminado de la cadena de golang es "".