Buenas tardes, tengo un script que cambia el valor del archivo json
const fsp = require('fs').promises; async function udpateTimeInFile() { try { let data = await fsp.readFile('example.json'); let obj = JSON.parse(data); obj.number = 777; await fsp.writeFile('example.json', JSON.stringify(obj)); } catch(e) { console.log(e); } } udpateTimeInFile();Necesito el script para encontrar el primer número 2 en la matriz y los números de objeto y cambiar la unidad a 3 y mi json
{ "foods": 111, "numbers": [1, 27, 5, 7, 0, 0, 2, 0, 0], "surnames": [1, 1, 1, 1, 1, 1, 1, 1, 1], "date": 0 }Y después de la ejecución de la aplicación js, el archivo se volvería así
{ "foods": 111, "numbers": [1, 27, 5, 7, 0, 0, 3, 0, 0], "surnames": [1, 1, 1, 1, 1, 1, 1, 1, 1], "date": 0 }Puede usar el método Array#findIndex para encontrar el índice de la primera aparición de 2 , luego puede usar el índice para cambiar el valor a 3 .
MANIFESTACIÓN
const obj = { "foods": 111, "numbers": [1, 27, 5, 7, 0, 0, 2, 0, 0], "surnames": [1, 1, 1, 1, 1, 1, 1, 1, 1], "date": 0 }, i = obj.numbers.findIndex(num => num === 2); if (i > -1) { obj.numbers[i] = 3; } console.log( obj );