En Windows: instala NVDA, ejecútalo, abre tu IDE, tápate los ojos y empieza a programar. En Mac: abre VoiceOver (command+F5), abre tu IDE, tápate los ojos y empieza a programar.
Si no has usado un lector de pantalla antes (o incluso si lo has usado)... buena suerte
Estoy tratando de bajar la complejidad de este código:
//!Complejidad 7... Hay que bajarla a 5
app.put("/stock/:id", (req, res) =>
{
let id = req.params.id
let datos = req.body
Articulo.findById(id).exec().then(
//Complejidad 37
(articulo) =>
{
modificarStock(articulo, datos)
...
la instruccion .then( (articulo) => { return modificarStock(articulo, datos) }). esta de mas porque no hacer ninguna operacion ni nada lo ideal seria .then( (articulo) => modificarStock(articulo, datos)) para que haces un arrow function con un return cuando puedes quitar la llave y colocar directo el retorno puedes ver la caracteristica de arrow function — JackNavaRow36 mins ago
explicar el return implicito de los arrow function en una linea
@PabloLozano iré al oculista pronto a ver si se me ha estabilizado la vista y veré a ver que hago. Pero de todas formas que puta rabia... cuesta una pasta, ya lo podía cubrir la seguridad social.
La diferencia entre una función flecha (arrow function) y una normal es el contexto: En las funciones clásicas el contexto se define al llamarlas y en las funciones flechas se define al declararlas. Nada mejor que un ejemplo para verlo claro:
(function() {
this.b="otra cosa";
this.a="una...
En el siguiente ejemplo tengo una clase y agrege dos funciones por prototype la primera como se define una funcion normalmente, mientras que la segunda con arrow function
simpleClase = function(){
this.ejemplo = 1
}
simpleClase.prototype.simple = function(){
console.log(this)
}
si...
TL;DR:
let f=() => {...};
es equivalente a
let f= (function () {...}).bind(this);
Explicación con más ejemplos:
Veamos cómo funciona la función arrow y cómo define su contexto. Pero primero veamos una función normal y su comportamiento:
let obj= { id: "obj"}; //creamos un objeto
fu...
@PabloLozano oye y notaste diferencia en tema de distancias? es decir, yo cuando me quito las gafas todo está un poquito más lejos... ¿Cuando te operas todo está un poquito más lejos?
Esta nueva sintaxis para funciones introducida en ES6 es funcionalmente equivalente a las funciones normales en la mayoría de las situaciones, sin embargo es importante notar las siguientes diferencias:
Valor de this, las funciones normales capturan el valor de this como el objeto global (o und...
le agregue "Si una función de flecha simplemente devuelve una sola línea de código, puede omitir los corchetes de la declaración y la palabra clave return. Esto le dice a la función de flecha que devuelva la declaración."
es como si me hubiesen anulado la voluntad: -te vamos a cortar la córnea +vale -y luego te vamos a quemar la córnea para tallarla, no dejes de mirar la luz +vale...
eso sin calmante lo mismo hubiese salido distinto xD
me acojoné más tras la operación pensando lo que habían hecho que durante la misma
Estoy tratando de bajar la complejidad de este código:
//!Complejidad 7... Hay que bajarla a 5
app.put("/stock/:id", (req, res) =>
{
let id = req.params.id
let datos = req.body
Articulo.findById(id).exec().then(
//Complejidad 37
(articulo) =>
{
modificarStock(articulo, datos)
...
Teóricamente solo deberías de descargar los paquetes deseados con todas sus dependencias (importante) y colocarlos dentro de la carpeta node_modules de tu proyecto para hacer una instalación de ellos local. También puedes buscar la ruta global de node y colocarlos allí.
El comportamiento de npm ...
Teóricamente solo deberías de descargar los paquetes deseados con todas sus dependencias (importante) y colocarlos dentro de la carpeta node_modules de tu proyecto para hacer una instalación de ellos local. También puedes buscar la ruta global de node y colocarlos allí.
El comportamiento de npm ...
supongamos que tengo el siguiente texto: "mostrando 10 de 50 registros" quiero hacer algún código que me devuelva los números que se encuentran es esa cadena, pienso que split puede ayudar pero no me queda del todo claro como hacerlo
@Ok, si quiero llamar el contexto de una variable de django en javascript, como seria? Lo estoy buscando igual, pero no lo encuentro, por si sabes ps, de otro modo normal bro
Buenas, gente. ¿Qué les parece este avatar: es.stackoverflow.com/users/133159/german? ¿Hay alguna definición al respecto de lo avatares permitidos en el sitio? ¿me pregunto si es válido algo así en un ámbito de profesionales que apunta a la inclusión? ¿opiniones?
Estoy tratando de bajar la complejidad de este código:
//!Complejidad 7... Hay que bajarla a 5
app.put("/stock/:id", (req, res) =>
{
let id = req.params.id
let datos = req.body
Articulo.findById(id).exec().then(
//Complejidad 37
(articulo) =>
{
modificarStock(articulo, datos)
...
la instruccion .then( (articulo) => { return modificarStock(articulo, datos) }). esta de mas porque no hacer ninguna operacion ni nada lo ideal seria .then( (articulo) => modificarStock(articulo, datos)) para que haces un arrow function con un return cuando puedes quitar la llave y colocar directo el retorno puedes ver la caracteristica de arrow function — JackNavaRow2 hours ago
Si una función de flecha simplemente devuelve una sola línea de código, puede omitir los corchetes de la declaración y la palabra clave return. Esto le dice a la función de flecha que devuelva la declaración.
Esta nueva sintaxis para funciones introducida en ES6 es funcionalmente equivalente a las funciones normales en la mayoría de las situaciones, sin embargo es importante notar las siguientes diferencias:
Valor de this, las funciones normales capturan el valor de this como el objeto global (o und...
@JackNavaRow o sea, que no es buena practica llamar el contexto de la variable en el front mediante js, Ok, si yo quiero accesar al contexto de la variable mediante buena practica en js, como seria?
El tema es que realiza una pregunta de complejidad de algoritmo, y de casualidad tiene un detalle en el uso de una función flecha que ¿incide? en dicha complejidad. Eso no lo hace un duplicado del uso de las funciones flecha. Al menos eso opino yo
es mas la complejidad se mide en O y son la cantidad de iteraciones o instrucciones que ejecuta un programa.. un return de mas o menos no puede variar la complejidad del mismo, ni estando adentro de un for
porque siempre se mide en el peor de los casos... ahi no hay nada que implique complejidad.. asi que no hay forma de saber de que habla
Una forma de lograr lo que te propones es usando una expresión regular para evaluar el nombre del campo en tu documento, de esta forma si un documento contiene un campo que coincida con la expresión regular, el mismo será devuelto por la consulta.
Recuerda que MongoDB es un sistema de Base de Da...
es un for dentro de un for
pero creo que si mezclamos tu respuesta con la mia
Puedes hacer un $where, y generar la busqueda que deseas
db.sesiones.find({
$where: function() {
dia = 24
function exists(obj){
for (i = 0; i < 2; i++){
if (obj.hasOwnProperty(`historial`)){
...
@JackNavaRow El OP no da más datos de lo que pretende, le coloco la coletilla que no es óptimo, pero dado que no se dan más datos del tipo de documentos o colecciones, fue lo que se me ocurrió.
@MauricioContreras me gusta tu respuesta! , solo que dejo el detalle, igual lo ideal es reinsertar todo eso dandole el valor que debe ser total para eso sirve mongodb
pero me podria decir... hay programas que guardan mal..
@gbianchi Creo que entiendo el punto de @JackNavaRow, de que el OP no se refiere a complejidad algorítmica, tal vez se refiere a lo denso de su código. Pero de todas formas los comentarios de su código dan a pensar otra cosa: // Complejidad 37, ¿qué es y de donde saca ese valor?, por eso tal vez sea un programa que analiza ciertas variables de sintaxis y estructura, más que la eficiencia o complejidad algorítmica.
@PakLei Hola
@PakLei Suelta a ver si tenemos opiniones divididas
@PakLei sucede que falla porque no hay más texto después, lo que no pasa cuando los acentos preceden al texto, allí tienes un detalle que sería bueno verificar antes de realizar el split. Déjame revisar la documentación, tal vez puedas usar algo que ahora se me pasa.
@MauricioContreras Bueno, mi pregunta es más en el sentido de por qué cuando hace el split de la cadena ^^JJ no tiene problemas ... pero cuando la cadena está invertida JJ^^ el split falla
@PakLei Claro, pues habrá que ver el algoritmo del método split, seguramente usa algún acumulador durante la búsqueda, si la búsqueda llega al final y no hay más texto, mapea de acuerdo a lo ya obtenido y obvia el resto, cosa que no sucede con el caso en que los acentos van al principio.
@PakLei The array returned by this method contains each substring of this string that is terminated by another substring that matches the given expression or is terminated by the end of the string. The substrings in the array are in the order in which they occur in this string. If the expression does not match any part of the input then the resulting array has just one element, namely this string.
los otros grupo brasil paraguay(arg no le gano a paraguay) chile(2 veces le quito la copa ) uruguay (siempre se defienden) colombia(perdio 2-0) y venezuela (ultimo partido messi comio 3 arepas)
el rival mas facil de los que pasaron es venezuela(sin ofender) en termino ranking fifa. que mas que ´presion para argentina buscar un partido donde la ultima vez que lo buscaron le dieron 3 arepas y una bebida a messi
Se tienen líneas en donde existen hasta 3 cadenas separadas por un acento circunflejo ^ con el siguiente formato:
campo1^campo2^campo3
^^campo3
^campo2^
campo1^^
...
^^^
En donde pueden existir 3 campos con información, 2, 1 o en el peor de los casos los 3 vacios.
Tengo el siguiente código:
...