标签: lodash

Lodash合并包括未定义的值

我正在尝试使用Lodash将对象A合并到对象B中,但我遇到的麻烦是对象A有一些未定义的值,我希望将它们复制到对象B.

_.merge()的Lodash文档说:

"递归地合并源对象的自身可枚举属性,这些属性未解析为未定义到目标对象中."

是否有其他功能可以执行此操作,还是可以轻松覆盖?

编辑A:

样本输入:

A = {
  name: "Bob Smith",
  job: "Racing Driver",
  address: undefined
}

B = {
  name: "Bob Smith",
  job: "Web Developer",
  address: "1 Regent Street, London",
  phone: "0800 800 80"
}
Run Code Online (Sandbox Code Playgroud)

预期产出

B = {
  name: "Bob Smith",
  job: "Racing Driver",
  address: undefined,
  phone: "0800 800 80"
}
Run Code Online (Sandbox Code Playgroud)

编辑B:

只是为了确认,它需要是一个"深度"合并.对象可能包含嵌套对象.

javascript lodash

13
推荐指数
1
解决办法
3556
查看次数

Lodash对象数组的联合

我想使用该_.union函数创建两个对象数组的并集.Union仅使用基元数组,因为它使用===来检查两个值是否相等.

我想使用键属性比较对象:具有相同键属性的对象将被视为相等.是否有一个很好的功能方式来实现理想的使用lodash?

javascript lodash

13
推荐指数
3
解决办法
2万
查看次数

映射数组数组

在lodash中是否有方法映射数组数组

我想做这样的事情,以便它保持数组的结构.

def double(x) { return x*2 }

_([[1,2],[3,4]]).somemethod(double) == [[2,4],[6,8]]
Run Code Online (Sandbox Code Playgroud)

javascript underscore.js lodash

13
推荐指数
3
解决办法
4万
查看次数

如何在JavaScript中按值过滤字典?

我正在编写一个脚本来创建一个名为dict的字典,其中我存储了文本区域中某些单词的频率.我的数组看起来像这样:

var dict = removeArray.reduce(function(p,c) {
    if (p[c] === undefined) {
        p[c] = 1;
    } else {
        p[c]++;
    }
    return p;
}, {});
Run Code Online (Sandbox Code Playgroud)

我想根据它们的值过滤这个字典的元素.我需要创建一个列表,其中包含值大于1的单词.我的字典看起来像这样:

{
    "92173": 6,
    "C": 6,
    "GJHGWO.NAYE": 1,
    "GJHGX4.NAYE": 1,
    "GJHGX6.NAYE": 1,
    "GJHGX8.NAYE": 1,
    "GJHGXA.NAYE": 1,
    "GJHGXC.NAYE": 1,
    "RBD": 10,
    "RBD3": 2,
    "SAMBORNSiPOSSSTHRa": 2,
    "SAMBORNSiPOSSSTHRa1": 2,
    "SAMBORNSiPOSSSTHRa2": 2,
    "X": 4,
    "X3": 2
}
Run Code Online (Sandbox Code Playgroud)

为了实现我尝试使用lodash,如下:

var filtered = _.find(dict, function(user) {
    return user.frecuency > 1;
});
Run Code Online (Sandbox Code Playgroud)

但是自从我得到以后我失败了:

undefined
Run Code Online (Sandbox Code Playgroud)

我不知道如何适当地使用lodash来过滤这个数组.

我的完整代码如下所示:

var splitWords = document.getElementById("texto").value.split(/[["\|~]/);
var removeArray …
Run Code Online (Sandbox Code Playgroud)

html javascript lodash

13
推荐指数
1
解决办法
1万
查看次数

VueJS这在lodash节流方法中

我试图在我的VueJS应用程序中限制一个方法.我首先尝试了以下内容:

export default {
    data () {
        return {
            foo: 'bar'
        }
    },
    methods: {
        doSomething () {
            console.log('olas')
        }
    },
    created () {
        _.throttle(this.doSomething,200)
    }
}
Run Code Online (Sandbox Code Playgroud)

但该doSomething方法没有被解雇:https://jsfiddle.net/z4peade0/

然后,我尝试了这个:

export default {
    data () {
        return {
            foo: 'bar'
        }
    },
    methods: {
        doSomething: _.throttle( () => {
            console.log('olas')
        },200)
    },
    created () {
        this.doSomething()
    }
}
Run Code Online (Sandbox Code Playgroud)

函数被触发:https://jsfiddle.net/z4peade0/1/

问题是,我无法访问foo限制方法内的属性:

export default {
    data () {
        return {
            foo: 'bar'
        } …
Run Code Online (Sandbox Code Playgroud)

lodash vue.js

13
推荐指数
1
解决办法
4284
查看次数

如何正确使用Vue JS手表与lodash debounce

我正在使用lodash在组件上调用debounce函数,如下所示:

...
import _ from 'lodash';

export default {
    store,
    data: () => {
        return {
            foo: "",
        }
    },

    watch: {
        searchStr: _.debounce(this.default.methods.checkSearchStr(str), 100)
    },

    methods: {
        checkSearchStr(string) {
            console.log(this.foo) // <-- ISSUE 1
            console.log(this.$store.dispatch('someMethod',string) // <-- ISSUE 2
        }
    }
}
Run Code Online (Sandbox Code Playgroud)
  • 问题1是我的方法checkSearchStr不知道foo
  • 问题2是我的商店也是undefined如此

为什么我的方法this在通过时不知道_.debounce?什么是正确的用法?

javascript lodash vue.js vuex vuejs2

13
推荐指数
2
解决办法
1万
查看次数

如何在javascript中生成随机的十六进制字符串

如何生成仅包含给定长度的十六进制字符 (0123456789abcdef) 的随机字符串?

javascript lodash

13
推荐指数
6
解决办法
1万
查看次数

如何使用lodash将数组元素从一个位置交换到另一个位置?

如何使用 lodash 库在 JavaScript 中将数组元素从一个位置交换到另一个位置?像这样的东西:

_.swap(array, fromIndex, toIndex) //but this is not working
Run Code Online (Sandbox Code Playgroud)

这是在线 lodash 测试器的链接,我在其中测试了一些方法,但都没有奏效

任何帮助将非常感激。谢谢!

javascript lodash

13
推荐指数
1
解决办法
6162
查看次数

Alternative to lodash omit

I would like to delete a property and return a new object without mutating the original object.

I know we can do this easily with Lodash like this:

const profile = { name: 'Maria', age: 30 }
_.omit(profile, name) // it returns a new object without the property name {age: 30}
Run Code Online (Sandbox Code Playgroud)

However, I would like to know if it's possible to do it with vanilla JavaScript without assigning that value to undefined or using a filter?

javascript object lodash

13
推荐指数
2
解决办法
6141
查看次数

默认的lodash memoize函数是否存在内存泄漏的危险?

我想使用,memoize但我担心缓存会无限增长,直到发生悲伤.

我无法通过google/stackoverflow搜索找到任何内容.

PS我正在使用lodash v4.

javascript lodash

12
推荐指数
2
解决办法
5189
查看次数

标签 统计

lodash ×10

javascript ×9

vue.js ×2

html ×1

object ×1

underscore.js ×1

vuejs2 ×1

vuex ×1