Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/json/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
这是一种更新Json对象数组值的方法吗?_Json_Node.js - Fatal编程技术网

这是一种更新Json对象数组值的方法吗?

这是一种更新Json对象数组值的方法吗?,json,node.js,Json,Node.js,我有一个JSON,如下所示: 我想要的是循环中有一个代码 for(变量i=0;i使用下面的代码 var array = [ { message: '', fileSize: '14534541', id: '7128', readBy: '2016-04-13 03:58:18', userID: '337', dateTime: '2016-04-12 06:07:12', fileName: 'ecdba036-9b0b-4c40-b64d-c82ce8765f14.mp4', fileTi

我有一个JSON,如下所示:

我想要的是循环中有一个代码

for(变量i=0;i
使用下面的代码
var array = [
{ message: '',
fileSize: '14534541',
id: '7128',
readBy: '2016-04-13 03:58:18',
userID: '337',
dateTime: '2016-04-12 06:07:12',
fileName: 'ecdba036-9b0b-4c40-b64d-c82ce8765f14.mp4',
fileTicketID: 'ecdba036-9b0b-4c40-b64d-c82ce8765f14' }, ... ];

async.eachSeries(array, function iteratee(item, callback) {
    db.query("SELECT * FROM ... WHERE ID=?", item.id, function(err, result) {
        if (result[0].fileSize == 0) {
            item.fileSize = 0;
        }
        callback();
    }
}, function done() {
    console.log(array);
};
$jsonS=“[{”message:“,”fileSize:”14534541,“id:”7128,“readBy:”2016-04-13 03:58:18“,”userID:”337,“dateTime:”2016-04-12 06:07:12“,”fileName:”ecdba036-9b0b-4c40-b64d-c82ce8765f14.mp4“,”fileTicketID:”ecdba036-9b0b-4c40-b64d-c82ce8765f14“,”消息“,”fileSize:”0,“id:”7128,“readBy:”“2016-04-13 03:58:18”,“userID”:337,“dateTime”:“2016-04-12 06:07:12”,“fileName”:“ecdba036-9b0b-4c40-b64d-c82ce8765f14.mp4”,“fileTicketID”:“ecdba036-9b0b-4c40-b64d-c82ce8765f14”; $jsonArray=json_decode($jsonS); foreach($jsonArray作为$k=>$json) { if(根据该文件名检查数据库中文件的值,如果该值为零) { $jsonArray[$k]->fileSize=0; } } 打印(jsonArray);
如果我理解正确,您可以使用
async
库执行以下操作:


指定在json中要检查的条件“我要检查数据库中文件的值"??无论条件如何,如果条件为真,则将jon变量fileze更新为0基本上,我要检查数据库中存在的文件名大小是否为0,如果大小为0,则更新它filezie 0这是一个误解,基本上我要传达的是,如果filezie是0,它来自数据库,而不是json,那么我有更新现有json变量filesize=0。我希望您理解此引用错误:在WriteStream中未定义异步。(/var/www/html/nodeproject/helloworld/controllers/messages.js:100:1)在emitNone(events.js:85:20)在WriteStream.emit(events.js:179:7)在fs.js:1851:14在FSReqWrap.oncomplete(fs.js:82:15)中您需要从npm下载它:npm install async
for(var i=0;i<n.length;i++)
{

if(condition)
{
then update the value of fileSize to 0
then josn array variable shown like
{ message: '',
        fileSize: 0,
        id: '7128',
        readBy: '2016-04-13 03:58:18',
        userID: '337',
        dateTime: '2016-04-12 06:07:12',
        fileName: 'ecdba036-9b0b-4c40-b64d-c82ce8765f14.mp4',
        fileTicketID: 'ecdba036-9b0b-4c40-b64d-c82ce8765f14' },
}

}


}
    Use below code 

    <pre>
    $jsonS = '[ { "message": "",   "fileSize": 14534541,    "id": 7128,    "readBy": "2016-04-13 03:58:18",    "userID": 337,    "dateTime": "2016-04-12 06:07:12",    "fileName": "ecdba036-9b0b-4c40-b64d-c82ce8765f14.mp4",    "fileTicketID": "ecdba036-9b0b-4c40-b64d-c82ce8765f14" },{ "message": "",   "fileSize": 0,    "id": 7128,    "readBy": "2016-04-13 03:58:18",    "userID": 337,    "dateTime": "2016-04-12 06:07:12",    "fileName": "ecdba036-9b0b-4c40-b64d-c82ce8765f14.mp4",    "fileTicketID": "ecdba036-9b0b-4c40-b64d-c82ce8765f14" } ]';
$jsonArray = json_decode($jsonS);
foreach($jsonArray as $k=>$json)
{
    if(check the value of file in database if that is zero according to that filename)
    {
        $jsonArray[$k]->fileSize=0;
    }

}
print_r($jsonArray);

    </pre>
var array = [
{ message: '',
fileSize: '14534541',
id: '7128',
readBy: '2016-04-13 03:58:18',
userID: '337',
dateTime: '2016-04-12 06:07:12',
fileName: 'ecdba036-9b0b-4c40-b64d-c82ce8765f14.mp4',
fileTicketID: 'ecdba036-9b0b-4c40-b64d-c82ce8765f14' }, ... ];

async.eachSeries(array, function iteratee(item, callback) {
    db.query("SELECT * FROM ... WHERE ID=?", item.id, function(err, result) {
        if (result[0].fileSize == 0) {
            item.fileSize = 0;
        }
        callback();
    }
}, function done() {
    console.log(array);
};