当前位置: 首页 > 面试题库 >

在没有jQuery的情况下在node.js上合并或合并JSON

洪照
2023-03-14
问题内容

我有多个JSON这样的人

var object1 = {name: "John"};
var object2 = {location: "San Jose"};

它们不是嵌套的或类似的东西。基本上是不同的领域。我需要像这样JSONnode.js 中将它们组合为一个:

{name: "John", location: "San Jose"}

我可以很好地使用 jQuery 。这是浏览器中的一个工作示例

http://jsfiddle.net/qhoc/agp54/

但是,如果我在 node.js中 执行此操作,则不希望加载jQuery(这有点用处,加上 node.js的jQuery
Windows 计算机上不起作用)。

那么,有没有一种简单的方法可以执行类似于$.extend()没有 jQuery的操作


问题答案:

正常循环?

function extend(target) {
    var sources = [].slice.call(arguments, 1);
    sources.forEach(function (source) {
        for (var prop in source) {
            target[prop] = source[prop];
        }
    });
    return target;
}

var object3 = extend({}, object1, object2);

这是一个基本的起点。您可能想要添加诸如hasOwnProperty检查之类的内容,或者添加一些逻辑以处理多个源对象具有具有相同标识符的属性的情况。

这是一个有效的例子。

旁注 :您所说的“ JSON”实际上是普通的JavaScript对象。JSON只是一种文本格式,与JavaScript共享一些语法。



 类似资料:
  • 我使用的API接受单个AKKA接收器,并用数据填充: 有没有一种方法,在不深入阿卡的深度的情况下,用两个汇而不是一个汇来处理输出? 例如 如果我可以访问方法使用的Flow,我可以使用,但流不会公开。 目前唯一的解决方法是将一个处理字符串的水槽传递给两个StringBuilder,以替换,但这似乎违背了AKKA的观点。如果不花几天时间学习AKKA,我就不知道是否有办法将输出从接收器中分离出来。 谢谢

  • 我正在尝试将嵌套映射转换为JSONObject,如下所示: (我试着按照这个例子放HashMap 我这样称呼它 我不明白的是为什么 null?据我所知,返回一个

  • 我正在阅读mapreduce with combiners教程http://www . tutorialspoint . com/map _ reduce/map _ reduce _ combiners . htm 减速器从组合器接收以下输入: 我的疑问是,如果我跳过组合器并允许映射器将输出传递给减速器而不执行任何分组操作(不使用组合器)并允许它通过洗牌和排序阶段会怎样。 在映射器阶段结束并经过

  • 如何在不使用TestNG或JUnit的情况下并行运行Selenium测试用例。 目前我正在使用命令 客户端(节点)命令: java-jar selenium-server-standalone-2.35.0.jar-角色节点-hub Protocol://host:4444/grid/register-浏览器浏览器名=firefox,平台=WINDOWS maxInstances=3。 但它不起作

  • 我正在尝试将Cucumber集成到现有的Spring Boot项目中 当前项目是单个Maven模块 单元测试(不含Spring上下文)和集成测试(含Spring上下文)组合在同一个测试文件夹中。 我想做的是能够调整我的单元测试和集成测试。 但是一旦我添加了依赖项(为了能够在规范旁边运行Spring上下文),它就要求文件夹中的所有测试都用注释。 下面是我的测试套件,配置为获取测试规范。 是否可以将两

  • 问题内容: 这里有点“简单”的问题,但是 使用Eclipse进行此类操作似乎很复杂。 我有一个“ utils”项目,在其中开发了“通用”代码,例如xml解析器,记录器,数学计算,调试实用程序等。 该库基于其他几个外部库(commons-lang-3.1,colt-1.2.0,jdom-2.0.4)工作,并且它是不可运行的JAR文件(即, 没有main(),包含在其他项目中的实用程序代码)。 我想做