Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

363
Vistas
¿Cómo puedo acceder a JSON pasado desde PHP Laravel en JS?

Vista

Ahora mismo, cuando lo hago

<pre>{{ $device->window }}</pre>

veo esto

ingrese la descripción de la imagen aquí


Quiero acceder a él en JS. Ex. device.screen.height , es 926

He intentado

 console.log(`{{ json_decode($device->window) }}`); console.log(JSON.parse(`{{ json_decode($device->window) }}`)); console.log(JSON.parse(`{{ json_decode($device->window) }}`)); console.log(JSON.stringify(`{{ json_decode($device->window) }}`)); console.log(JSON.stringify(`{{ json_decode($device->window) }}`)); console.log(JSON.parse(`{{ json_encode($device->window) }}`)); console.log(JSON.parse(`{{ json_encode($device->window) }}`)); console.log(JSON.stringify(`{{ json_encode($device->window) }}`)); console.log(JSON.stringify(`{{ json_encode($device->window) }}`));

seguí recibiendo

htmlspecialchars() espera que el parámetro 1 sea una cadena, objeto dado


Si lo hago :

console.log(JSON.parse(JSON.stringify( {{ json_encode($device->window) }} )));

Obtuve

&quot;{&quot;innerWidth&quot;:&quot;980&quot;,&quot;innerHeight&quot;:&quot;1708&quot;,&quot;devicePixelRatio&quot;:&quot;3&quot;,&quot;screen&quot;:{&quot;width&quot;:&quot;428&quot;,&quot;height&quot;:&quot;926&quot;}}&quot;

Tengo tantos &quot;

about 4 years ago · Juan Pablo Isaza
3 Respuestas
Responde la pregunta

0

Tienes que usar una sintaxis diferente para eso:

 {!! json_encode($device->window) !!}

Pero no debes acceder a él de esta manera. No es una buena práctica mezclar idiomas.

about 4 years ago · Juan Pablo Isaza Denunciar

0

Dentro de una etiqueta de script, podrías hacer:

 const myData = {{ $device->window }}; console.log(myData.screen.height);
about 4 years ago · Juan Pablo Isaza Denunciar

0

Hay una directiva blade para eso:

 @php $json = [ 1, new DateTime, (object)[], 'a' ]; @endphp <script> test = @json($json); console.log(test) </script>
about 4 years ago · Juan Pablo Isaza Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda