Javascript 如何将值存储在hashmap/数组中,以供以后比较
我需要循环1-100个潜在值,检查该值是否出现一次或两次,并根据该值执行某些操作。(这些值将仅显示0,1,2次)。是否有一种方法可以将生成的值存储在数组或hashmap中,并将生成的新值与hashmap中已有的其他值进行比较 我感谢你的帮助Javascript 如何将值存储在hashmap/数组中,以供以后比较,javascript,Javascript,我需要循环1-100个潜在值,检查该值是否出现一次或两次,并根据该值执行某些操作。(这些值将仅显示0,1,2次)。是否有一种方法可以将生成的值存储在数组或hashmap中,并将生成的新值与hashmap中已有的其他值进行比较 我感谢你的帮助 编辑:我将提取的值是整数,所以我想我可以在hashmap中对所有值进行排序,然后从中进行比较?您可以使用对象概念来实现这一点 var obj = new Object(); function(val) { if (obj.val == undefi
编辑:我将提取的值是整数,所以我想我可以在hashmap中对所有值进行排序,然后从中进行比较?您可以使用对象概念来实现这一点
var obj = new Object();
function(val) {
if (obj.val == undefined) {
obj.val = 1;
} else {
obj.val++;
}
}
console.log(obj);
您可以使用“对象”概念来完成此操作
var obj = new Object();
function(val) {
if (obj.val == undefined) {
obj.val = 1;
} else {
obj.val++;
}
}
console.log(obj);
除非我误解了你,否则你可以直接使用JavaScript对象。你想干什么
hash = {};
// Count the number of times each value occurs in the values array.
for (var i = 0; i < values.length; i++) {
if (!hash[values[i]]) {
hash[values[i]] = 1;
} else {
hash[values[i]] += 1;
}
}
hash={};
//计算每个值在值数组中出现的次数。
对于(变量i=0;i
除非我误解了你,否则你可以直接使用JavaScript对象。你想干什么
hash = {};
// Count the number of times each value occurs in the values array.
for (var i = 0; i < values.length; i++) {
if (!hash[values[i]]) {
hash[values[i]] = 1;
} else {
hash[values[i]] += 1;
}
}
hash={};
//计算每个值在值数组中出现的次数。
对于(变量i=0;i
您始终可以将元素映射到它出现的次数。因此,如果5
出现3次,您的地图将是:
{ 5: 3 }
因此,每次获得一个值时,如果地图包含一个条目,则更新地图,或者创建一个计数为1
的新条目:
var map = {};
function addValue(value) {
if(!map[value]) {
map[value] = 0;
}
map[value]++;
}
那么你所要做的就是:
for(var i = 0; i < values.length; i++) {
addValue(values[i]);
}
现在您有了一个排序键数组。您始终可以将元素映射到它出现的次数。因此,如果5
出现3次,您的地图将是:
{ 5: 3 }
因此,每次获得一个值时,如果地图包含一个条目,则更新地图,或者创建一个计数为1
的新条目:
var map = {};
function addValue(value) {
if(!map[value]) {
map[value] = 0;
}
map[value]++;
}
那么你所要做的就是:
for(var i = 0; i < values.length; i++) {
addValue(values[i]);
}
现在你有了一个排序键数组。Hashmaps(或者只是对象,在JS中通常称为对象)没有任何被排序的概念(在JS中)。它们是一组键-值对,您可以通过知道键直接访问值,也可以按照不保证的顺序迭代键。另一方面,数组可以被排序,因为顺序对它们很重要。Hashmaps(或者只是对象,在JS中通常被称为对象)没有任何被排序的概念(在JS中)。它们是一组键-值对,您可以通过知道键直接访问值,也可以按照不保证的顺序迭代键。另一方面,数组是可以排序的,因为顺序对它们很重要。function(var val)
对于函数声明来说是无效的JavaScript(丢失var
)。很抱歉,你解释了@ajp15243我不明白WTU的意思,你在示例代码中声明了一个匿名函数,但你做得不对。函数参数列表中不应该有var
,因为JavaScript不是这样声明函数参数的。签名应简单地读取函数(val){…}
。尽管没有名称、变量赋值或立即执行,匿名函数是不可访问/不可执行的。function(var val)
不是函数声明的有效JavaScript(丢失var
)对不起,你解释一下@ajp15243我不明白你说你在示例代码中声明了一个匿名函数,但你做得不对。函数参数列表中不应该有var
,因为JavaScript不是这样声明函数参数的。签名应简单地读取函数(val){…}
。尽管在没有名称、变量赋值或立即执行的情况下,匿名函数是无法访问/执行的。