将Node中收到的POST请求转换为Javascript对象

时间:2014-10-04 21:16:12

标签: javascript node.js web

我很抱歉这个非常基本的问题,但我无法理解这一点。这是我第一次写服务器。几乎我们有一个iPhone应用程序通过使用JSON数据执行POST请求来咨询我正在编写的服务器。当我收到这些数据时,这相当于JavaScript中的对象吗?当我在Javascript中有两个对象时,假设格式为:

var x = { major_id: 1234, minor_id: 5678};
var y = { major_id: 1234, minor_id: 5678};

我能做到:

if (x == y) {
    //do something
}

或者我是否需要单独比较对象中的每个元素?

1 个答案:

答案 0 :(得分:1)

这取决于您从POST收到的内容。它很可能是字符串化的JSON,您可以使用:JSON.parse(receivedString);

转换为对象

使用typeof x

检查变量的类型

一旦x和y具有相同的类型,您可以按如下方式对它们进行比较:

  • 如果x和y是JSON字符串,请使用x==y
  • 如果它们都是对象,则需要逐个比较参数。有些图书馆会为您抽象出来。例如,您可以使用Underscore.JS方法isEqual并执行以下操作:

    var _ = require('underscore')
    var x = { major_id: 1234, minor_id: 5678};
    var y = { major_id: 1234, minor_id: 5678};
    if(_.isEqual(x, y)){
      //Do stuff
    }