Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

169
Visualizações
Pasar la variable a la función que se definirá

EDICIÓN 2: ¿Por qué esta pregunta tan específica se marcó como un duplicado de esta muy conceptual: ¿Cuál es la diferencia entre pasar por referencia y pasar por valor? . Si alguien más tuviera la misma pregunta que yo, no terminaría con esta en Google buscándola e, incluso si la tuviera, no respondería a su pregunta.

EDITAR: Gracias a todos por su ayuda hasta ahora. Cosas bastante difíciles de entender desde mi punto de vista. La razón por la que hago esto es porque configuré una función a la que llamo varias veces y en la que defino una variable (una única con cada llamada). Necesito poder referirme a cada variable única después. Aquí está mi código de intento real a continuación. ¿Cuál sería la forma correcta de hacer esto?

 let newSeq1 let newSeq2 function sequenceClip(sample, length, sequenceVariable) { let currentPosition = Tone.Transport.position let whenToStart if (currentPosition === '0:0:0') { whenToStart = '0:0:0' } else { const barToStartOn = +currentPosition.slice(0, currentPosition.indexOf(':')) whenToStart = `${barToStartOn + 1}:0:0` } sequenceVariable = new Tone.Sequence((time, note) => { sampler.triggerAttackRelease(note, '4m', time) }, [sample], length).start(whenToStart); } loop1.addEventListener('mousedown', () => { sequenceClip("C3", '1m', newSeq1) }) loop2.addEventListener('mousedown', () => { sequenceClip("C#3", '4m', newSeq2) })

¿Cómo paso una variable a una función en Javascript para que se le asigne un valor? P.ej:

¿Por qué a la variable no se le asigna el valor 5? ¿Y cuál es la forma de evitar esto?

 let a function defineVariable(var2beDefined) { var2beDefined = 5 } defineVariable(a) console.log(a === 5)

about 4 years ago · Juan Pablo Isaza
2 Respostas
Responde à pergunta

0

Reasignar un identificador, por sí solo, nunca tiene efectos secundarios (en la mayoría de las circunstancias): el único cambio resultante de someIdentifier = someNewValue será cuando otras partes del código hagan referencia a ese mismo someIdentifier .

Si desea pasar algo para que se le asigne, pase una función que, cuando se llame, se asigne a la variable externa.

 let a; function defineVariable(callback) { callback(5); } defineVariable(newVal => a = newVal); console.log(a === 5)

La única vez que la asignación a un identificador tendrá efectos secundarios es si:

  • Dentro de una función con una lista de argumentos simple, reasigna uno de los parámetros (en cuyo caso, el objeto de arguments también se cambiará)
  • Está utilizando módulos ES6 y reasigna un identificador que se está exportando, en cuyo caso otros módulos que lo importen también verán el cambio.
about 4 years ago · Juan Pablo Isaza Relatório

0

Por lo general, escribiría una función de inicialización que devuelva un valor y asignaría ese valor de retorno a la variable global relevante. Por ejemplo:

 let newSeq1 let newSeq2 function sequenceClip(sample, length, sequenceVariable) { let currentPosition = Tone.Transport.position let whenToStart if (currentPosition === '0:0:0') { whenToStart = '0:0:0' } else { const barToStartOn = +currentPosition.slice(0, currentPosition.indexOf(':')) whenToStart = `${barToStartOn + 1}:0:0` } return new Tone.Sequence((time, note) => { sampler.triggerAttackRelease(note, '4m', time) }, [sample], length).start(whenToStart); } loop1.addEventListener('mousedown', () => { newSeq1 = sequenceClip("C3", '1m') }) loop2.addEventListener('mousedown', () => { newSeq2 = sequenceClip("C#3", '4m') })

Tenga en cuenta que tanto newSeq1 como newSeq2 no estarán definidos hasta los primeros eventos mousedown/mouseup.

about 4 years ago · Juan Pablo Isaza Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda