我一直试图通过首先过滤它来返回对象的属性.这是我做的:
var characters = [
{ 'name': 'barney', 'age': 36, 'blocked': false },
{ 'name': 'fred', 'age': 40, 'blocked': true },
{ 'name': 'pebbles', 'age': 1, 'blocked': false }
];
_.find(characters, function(chr) {
return chr.age == 40
});
Run Code Online (Sandbox Code Playgroud)
它返回整个对象,因为我想返回特定属性.任何人都可以指导我如何做到这一点?
任何帮助将不胜感激.
我有这个数组:
[
{
id: 1,
name: 'test 1',
children: []
},
{
id: 2,
name: 'test 2',
children: [
{
id: 4,
name: 'test 4'
}
]
},
{
id: 3,
name: 'test 3',
children: []
}
]
Run Code Online (Sandbox Code Playgroud)
如何通过id
此数组和嵌套children
数组中的属性进行过滤?
例如,搜索id = 3
,应返回test 3
对象,并搜索id = 4
应返回test 4
对象.
我如何懒洋洋地加载 ES6模块?通过懒惰,我的意思是我不希望实际加载的模块不需要.例如,这是我可以用RequireJS做的事情:
function someEventHandler() {
var SomeModule = require('some-module'),
module = new SomeModule();
// ...
}
Run Code Online (Sandbox Code Playgroud)
使用ES6导入似乎无法实现同样的功能:
// Doesn't appear to be valid...
function someEventHandler() {
import SomeModule from 'some-module';
var module = new SomeModule();
// ...
}
Run Code Online (Sandbox Code Playgroud)
有没有可行的技术只在需要时使用ES6模块引入依赖关系?或者是跟踪完整依赖关系图并预先获取所有内容的唯一途径?
我正在讨论使用JavaScript Object.hasOwnProperty(propName)
和lodash _.has(obj, proName)
函数来确定对象是否具有属性.
对于简单的案例,哪个更有效?对于复杂的情况?对于所有情况?
有没有更好的图书馆,我没有提到过?
谢谢!
我有一个以下格式的数组:
var array = [
{ id: '555weibo' },
{ id: '578weibo' },
{ id: '111facebook' },
{ id: '123facebook' },
{ id: '145facebookpage' },
{ id: '145facebookpage' },
{ id: '766facebook' },
{ id: '242facebook' },
{ id: '432twitter' },
{ id: '432exing' }
];
Run Code Online (Sandbox Code Playgroud)
我需要找到的出现的次数facebook
,twitter
,xing
,和weibo
该数组内.例如:
{
weibo: 2,
facebook: 6,
twitter: 1,
xing: 1
}
Run Code Online (Sandbox Code Playgroud)
我已经找到了解决方案,但似乎没有任何效果.
以下代码未提供预期结果.非常感谢您的帮助.谢谢.
var filtered = _.map(diff, function(value, key) {
return { id: key, count:value }; …
Run Code Online (Sandbox Code Playgroud) 有没有比我在下面做的更好的方法来迭代两个对象数组?这样做似乎很麻烦.我正在使用lodash.
var array1 = [
{id:4356, name: 'James', sex: 'male'},
{id:7899, name: 'Jimmy', sex: 'male'},
{id:2389, name: 'Dawn', sex: 'female'}
];
var array2 = [
{id:4356, salary: 1000, job: 'programmer'},
{id:7899, salary: 2000, job: 'tester'},
{id:2389, salary: 3000, job: 'manager'}
];
Run Code Online (Sandbox Code Playgroud)
示例输出:
console.log(array1[0])
{
id:4356,
name: James,
sex: male,
person: {
id:4356,
salary: 1000,
job: programmer
}
}
Run Code Online (Sandbox Code Playgroud)
功能:
_.forEach(array1, function(item1) {
_.forEach(array2, function(item2) {
if(item1.id === item2.id){
item1.person = item2;
}
});
});
Run Code Online (Sandbox Code Playgroud) lodash提供了一种_.uniq()
从数组中查找唯一元素的方法,但是使用的比较函数是严格相等===
,而我想使用_.isEqual()
,它满足:
_.isEqual([1, 2], [1, 2])
// true
Run Code Online (Sandbox Code Playgroud)
是否有执行方式_.uniq()
有_.isEqual()
,不写我自己的方法?
我想减少使用的对象数组lodash
.
我的目标:
[
{date: '01/01/2016', price: 5},
{date: '01/01/2016', price: 10},
{date: '01/02/2016', price: 500}
]
Run Code Online (Sandbox Code Playgroud)
减少之后:
[
{date: '01/01/2016', price: 15},
{date: '01/02/2016', price: 500}
]
Run Code Online (Sandbox Code Playgroud)
主要目标是检查是否存在相同的日期并将价格累积到一个简单的对象中......
我有以下数组;
["Test1", "Test2", "Test3"]
Run Code Online (Sandbox Code Playgroud)
我希望它是这样的;
[{ id: 0, name: "Test1" }, { id: 1, name: "Test2" }, { id: 2, name: "Test3" }]
Run Code Online (Sandbox Code Playgroud)
任何帮助?我想我应该以某种方式_.object()
用于这个任务。
lodash ×8
javascript ×7
arrays ×2
object ×2
angularjs ×1
ecmascript-6 ×1
import ×1
lazy-loading ×1
module ×1
properties ×1