相关疑难解决方法(0)

在JavaScript中深度克隆对象的最有效方法是什么?

克隆JavaScript对象的最有效方法是什么?我已经看到obj = eval(uneval(o));被使用,但这是非标准的,只有Firefox支持.

我做过类似的事情,obj = JSON.parse(JSON.stringify(o));但质疑效率.

我也看到了具有各种缺陷的递归复制功能.
我很惊讶没有规范的解决方案.

javascript clone object

5181
推荐指数
48
解决办法
189万
查看次数

如何使用Javascript比较两个数组是否相等?

我希望数组的位置也相同,值也相同.

var array1 = [4,8,9,10];
var array2 = [4,8,9,10];
Run Code Online (Sandbox Code Playgroud)

我试过这样的

var array3 = array1 === array2   // returns false
Run Code Online (Sandbox Code Playgroud)

javascript arrays jquery

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

如何检查Javascript数组中是否存在多个值

所以,我正在使用Jquery,并且有两个数组都有多个值,我想检查第一个数组中的所有值是否存在于第二个数组中.

例如,例1 ......

数组A包含以下值

34,78,89

数组B包含以下值

78,67,34,99,56,89

这将返回真实

......例2:

数组A包含以下值

34,78,89

数组B包含以下值

78,67,99,56,89

这将返回false

......例3:

数组A包含以下值

34,78,89

数组B包含以下值

78,89

这将返回false

到目前为止,我试图解决这个问题:

  1. 使用自定义'compare'方法扩展Jquery以比较两个数组.问题是,当数组相同时,这只返回true,从示例1中可以看出,我希望它返回true,即使它们不相同但至少包含值
  2. 使用Jquerys .inArray函数,但这只检查数组中的一个值,而不是多个.

任何人都可以投入任何光线都会很棒.

javascript arrays jquery

37
推荐指数
5
解决办法
7万
查看次数

在Javascript中,为什么[1,2] == [1,2]或({a:1})==({a:1})为假?

以下是在Firebug中完成的:

>>> [1, 2] == [1, 2]
false

>>> ({a : 1}) == ({a : 1})
false
Run Code Online (Sandbox Code Playgroud)

我认为Javscript有一些规则说,如果一个Object或Array对相同的元素具有相同的引用,那么它们是相等的吗?

但即使我说

>>> foo = {a : 1}
Object { a=1}

>>> [foo] == [foo]
false

>>> ({a: foo}) == ({a: foo})
false
Run Code Online (Sandbox Code Playgroud)

有没有办法使它能够进行元素比较并返回true

javascript

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

有没有办法检查两个数组是否具有相同的元素?

假设我有2个阵列

firstArray  = [1, 2, 3, 4, 5];
secondArray = [5, 4, 3, 2, 1];
Run Code Online (Sandbox Code Playgroud)

我想知道它们是否包含相同的元素,而顺序并不重要.我知道我可以编写一个函数来对它们进行排序,然后循环遍历它们进行检查,但是有没有预先构建的函数呢?(不仅是Vanilla JS,其他javascript库也没关系)

javascript arrays

6
推荐指数
2
解决办法
8980
查看次数

标签 统计

javascript ×5

arrays ×3

jquery ×2

clone ×1

object ×1