Bueno, ya no necesitamos, oh, lo siento. Ya no necesitamos congelar más, porque es completamente inmutable. Las conexiones infinitas intentan cambiar mi configuración. Simplemente va a fallar. Así que problema resuelto, supongo.
Cuando se trata del segundo problema, bueno, hablamos de igualdad con triple igual. Pero map también seguirá el mismo tipo de igualdad. Eso significa que si mis coordenadas de un objeto se convierten en un registro, ahora es básicamente de referencias a las coordenadas, va a comparar los valores internos de las coordenadas. Así que si creo una copia de exactamente las mismas coordenadas, ya que los valores dentro del registro de coordenadas van a ser los mismos, todavía vamos a poder buscar nuestro botín.
Finalmente. ¿Qué pasa con los ciclos de objetos y los objetos y valores no serializables? Hablé de eso antes. Bueno, no podrás hacerlos con estructuras de registro y tupla. Vamos a llegar a eso un poco más tarde. ¿Y qué pasa con la fragilidad del orden de las claves con el stringify que te mostré antes? Si inserto mis claves en un orden diferente, ¿cambiaría algo? Con los registros, no. Porque los registros no memorizan el orden de inserción, simplemente devuelven las claves lexicográficamente en el orden que están ordenadas lexicográficamente. Así que si tomo las dos coordenadas, si inserto mis claves de una manera diferente, no importa, siguen siendo los mismos valores dentro, sigue siendo la misma igualdad.
Aunque no hay almuerzo gratis aquí. No puedes hacer algunas cosas con los registros y las tuplas, y por buenas razones, y vamos a pasar por ellas. En primer lugar, no puedes poner un objeto allí. Si miras en esta diapositiva, olvidé poner un hash delante de mi objeto db aquí. Es un objeto ahora, no es un registro, y los registros no les gusta tener objetos en ellos. Desafortunadamente, eso también vale para las funciones porque las funciones resultan ser objetos. Todavía hay una forma de solucionar ese problema, y no voy a hablar de ello porque es una solución que podrás utilizar, pero solo me quedan nueve minutos, así que necesito speed up.
Bueno, ahora vamos a hablar de cómo puedes derivar cambios. Obviamente no puedes cambiar cosas en su lugar, no puedes empujar valores en su lugar a una tupla. ¿Cómo haces esto? Bueno, con los arrays, puedes concatenar cosas usando el spread. Puedes hacer eso con las tuplas también, y de hecho, puedes hacer eso con los registros también. Así que si solo quiero cambiar un valor en mi propuesta y crear el futuro, voy a actualizarlo propagando la propuesta y cambiando la clave de la etapa aquí. Aún no estamos allí, pero pronto. Bueno, más allá de eso, hay algunos métodos realmente útiles en el prototipo de array, ¿verdad? Por ejemplo, reverse.
Comments