zoukankan      html  css  js  c++  java
  • node.js 将json字符串转为json对象的方法

    node.js 将json字符串转为json对象的方法

    在做查询的时候遇到的一个坑,记录一下:
    根据不同的类目进行查找的时候,我要获取不同类目的value和input的value,但是为了符合mongodb查找的条件,我将二者的value值组合成了一个字符串,但是还需要将字符串转为对象才能使用,通常在js中使用eval()和JSON.parse(),这两个方法在nodejs中也是适用的。
    

    但是要注意:在拼接字符串的时候要按照json的格式拼接,key和value都要加上双引号,并且和拼接用的引号区分开:

    下面用代码记录一下:
    <form class="navbar-form navbar-left" action="/finduser" method="get">
        <div class="form-group">
          <select name="select">
           <option value="name"> 姓名</option>
           <option value="age"> 年龄</option>
           <option value="sex"> 性别</option>
           <option value="tel"> 电话</option>
           <option value="email"> 邮箱</option>
          </select>
          <input type="text" class="form-control" placeholder="Search" name="search">
        </div>
        <button type="submit" class="btn btn-default">Submit</button>
      </form>
    
    在nodeJS代码中:
    router.get('/finduser',function(req,res){
    var select = req.query.select
    var search = req.query.search
    
    var jsonstr = '{"'+select+'":"'+search+'"}';
    
    // var jsonObj = eval('(' + json + ')');
    var jsonObj = JSON.parse(jsonstr);
    
    mongoClient.connect(dbUrl,function(err,db){
            if(err){
                console.log('连接数据库失败');
            }else{
                db.collection('student').find(jsonObj).toArray(function(err,data){
                    if(err){
                         console.log('查找失败');
                    }else{
                        // res.redirect('/listuser')
                        res.render('listuser',{datalist:data})
                    }
                })
            }
        })
    })
  • 相关阅读:
    逆元应用求组合数
    树的重心入门
    扫描线求面积的并,交
    涂抹果酱
    牧场的安排
    「SCOI2005」互不侵犯
    Network Coverage
    Linux命令传输文件
    VMware Workstation 与 Device/Credential Guard 不兼容.在禁用 Device/Credenti
    Springboot开启SpringSecurity
  • 原文地址:https://www.cnblogs.com/rainbow8590/p/7146585.html
Copyright © 2011-2022 走看看