标签: javascript-objects

如何按月和年对对象数组进行分组?

我有一个像这样的对象数组:

entries: [  
   {  
      id:1,
      text: "Lorem ipsum",
      timeStamp:"Thu, 01 Jun 2018"
   },
   {  
      id:3,
      text:"Lorem ipsum",
      timeStamp:"Thu, 24 May 2018"
   },
   {  
      id:4,
      text: "Lorem ipsum",
      timeStamp:"Thu, 24 May 2018"
   }
]
Run Code Online (Sandbox Code Playgroud)

现在我希望能够将它们分组到“存档”数组中,如下所示:

archive: [
   {
      monthyear: May 2018,
      entries: 2
   },
   {
      monthyear: June 2018,
      entries: 5
   }
]
Run Code Online (Sandbox Code Playgroud)

想知道我应该使用什么样的数组函数来获得预期的结果。

javascript arrays grouping javascript-objects

-2
推荐指数
1
解决办法
2434
查看次数

如何在现有 Javascript 对象中添加带值的动态键?

我有一个现有的 javascript 对象。

let existingObject = {
    1: {
        'prop1': 'prop1 value',
        'prop2': 'prop2 value'
    },
    2: {
        'prop1': 'prop1 value',
        'prop2': 'prop2 value'
    },
    3: {
        'prop1': 'prop1 value',
        'prop2': 'prop2 value'
    }
}
Run Code Online (Sandbox Code Playgroud)

我想向该现有对象添加一个属性。我的新关键值是:

const key = 4;
const value = {
    'prop1': 'prop1 value',
    'prop2': 'prop2 value'
}
Run Code Online (Sandbox Code Playgroud)

附加键和值后,我的新对象应该是,

const newObject = {
    1: {
        'prop1': 'prop1 value',
        'prop2': 'prop2 value'
    },
    2: {
        'prop1': 'prop1 value',
        'prop2': 'prop2 value'
    },
    3: {
        'prop1': 'prop1 value',
        'prop2': …
Run Code Online (Sandbox Code Playgroud)

javascript javascript-objects lodash

-2
推荐指数
1
解决办法
4709
查看次数

如何将两个字符串数组转换为对象数组,例如 JavaScript 中具有特定键的键和值?

我需要转换两个具有相同长度的字符串数组:

const arr1 = ['Jessica', 'Ben', 'Samantha', 'John', 'Sandy'];
const arr2 = ['21', '45', '34', '90', '67']; 
Run Code Online (Sandbox Code Playgroud)

最后我需要得到这个数组与特定的键名称,年龄:

const result = [
{ name: 'Jessica', age: '21'}, 
{ name: 'Ben', age: '45'}, 
{ name: 'Samantha', age: '34'},
{ name: 'John', age: '90' },
{ name: 'Sandy', age: '67' },
];
Run Code Online (Sandbox Code Playgroud)

你能告诉我我该怎么做吗?

javascript arrays function javascript-objects

-2
推荐指数
1
解决办法
953
查看次数

为什么 '[' + array + ']' 返回一个普通数组?

所以我只是在写一些代码并意识到在数组周围添加方括号只会返回一个完整的普通数组,如下所示,

var arr = [1, 2, 3]
var addSquareBrackets = function(arr) {
    return '[' + arr + ']';
}

addSquareBrackets(arr); // <- returns [1, 2, 3] 
Run Code Online (Sandbox Code Playgroud)

在数组周围连接大括号时也会发生同样的事情。

var arr = [1, 2, 3]
var addCurlyBrackets = function(arr) {
    return '{' + arr + '}';
}

addCurlyBrackets(arr); // <- returns {1, 2, 3}
Run Code Online (Sandbox Code Playgroud)

第一个示例如何返回 [1, 2, 3] 而不是 [[1, 2, 3]] 或第二个示例如何返回 {1, 2, 3} 而不是 {[1, 2, 3]}。有人可以帮助我理解为什么会发生这种情况吗?

javascript arrays javascript-objects

-2
推荐指数
1
解决办法
40
查看次数

Javascript语法 - if语句

我有以下对象:

var quarters = {
                q1:false,
                q2:false,
                q3:false,
                q4:{name: "i'm q4"}
                }
Run Code Online (Sandbox Code Playgroud)

我的问题是为什么以下IF返回true?

if (quarters.q1 == quarters.q2 == quarters.q3 == quarters.q4 == false)
Run Code Online (Sandbox Code Playgroud)

我该怎么if all quarters are false办?

我没有使用的原因!quarters.q1 && !quarters.q2 && !quarters.q3 && !quarters.q4是因为有时候根本没有定义某些属性.

javascript javascript-objects

-3
推荐指数
1
解决办法
53
查看次数

JavaScript:使用新索引在对象中添加或推送值

我正在使用 JS 对象。我想推送一些具有定义索引(id)的值,以便我可以在 JS 对象中添加/推送它们后访问这些值。

假设这是我在 JavaScript 中创建的一个对象

var my_books = {
    1 : {
        'name' : 'Book_1',
        'price' : '100'
    },
    2 : {
        'name' : 'Book_2',
        'price' : '200'
    }
};
Run Code Online (Sandbox Code Playgroud)

现在,我想在上面创建的对象中添加以下数据

3 : {
    'name' : 'Book_3',
    'price' : '300'
}
Run Code Online (Sandbox Code Playgroud)

添加后我想使用以下行访问它。

console.log(JSON.stringify(my_books[3]['name']));
Run Code Online (Sandbox Code Playgroud)

但我不知道如何在 JavaScript 的对象中添加此类数据。我搜索了很多,但没有代码在这方面帮助我。

请帮助。

javascript javascript-objects

-3
推荐指数
1
解决办法
4045
查看次数