sql >> データベース >  >> NoSQL >> MongoDB

mongodbドット表記の変数

    ES2015より前のJSでは、オブジェクトリテラル構文で定数文字列以外は許可されていないため、可変キーオブジェクトを個別に作成する必要があります。

    var stuffID = 5
    var stuff = {};                 // create an empty object
    stuff['stuff.' + stuffID] = 1;  // and then populate the variable key
    
    collection.update({
        "id": id,
    }, {
        "$inc": stuff               // pass the object from above here
    }, ...);
    

    編集 ES2015では、[expr]: valueを使用して、オブジェクトリテラルのキーとして式を使用できるようになりました。 構文、この場合はES2015バッククォート文字列補間も使用します:

    var stuffID = 5;
    collection.update({
        "id": id,
    }, {
        "$inc": {
            [`stuff.${stuffID}`]: 1
        }
    }, ...);
    

    上記のコードはNode.jsv4+

    で機能します

    1. MongooseがMongoセカンダリデータベースから読み取っていません

    2. Angular、NodeJS、Express、MongoDBを使用してオンラインフードストアWebサイトを作成する

    3. MongoDB countDocuments()

    4. モジュール'../build/Release/bson']コードが見つかりません:'MODULE_NOT_FOUND'} js-bson:純粋なJSバージョンを使用してc++bson拡張機能を読み込めませんでした