Javascript 使用jquery检查数组中的项目计数
我正在跟踪这件事,以找出发生的原因 数组中每个项的。 如果任何项目发生超过或等于3次,则我必须显示警报 以下是我尝试过的代码:Javascript 使用jquery检查数组中的项目计数,javascript,jquery,arrays,function,Javascript,Jquery,Arrays,Function,我正在跟踪这件事,以找出发生的原因 数组中每个项的。 如果任何项目发生超过或等于3次,则我必须显示警报 以下是我尝试过的代码: var countries = ['India', 'Australia', 'Bangladesh', 'India', 'India', 'New Zealand', 'New Zealand', 'Pakistan', 'Pakistan', 'West Indies']; var recipientsArray = countries.sort(); v
var countries = ['India', 'Australia', 'Bangladesh', 'India', 'India',
'New Zealand', 'New Zealand', 'Pakistan', 'Pakistan', 'West Indies'];
var recipientsArray = countries.sort();
var reportRecipientsDuplicate = [];
for (var i = 0; i < recipientsArray.length; ++i) {
if (!reportRecipientsDuplicate[recipientsArray[i]]) {
reportRecipientsDuplicate[recipientsArray[i]] = 0;
}
++reportRecipientsDuplicate[recipientsArray[i]];
}
var国家=[“印度”、“澳大利亚”、“孟加拉国”、“印度”、“印度”,
“新西兰”、“新西兰”、“巴基斯坦”、“巴基斯坦”、“西印度群岛”];
var recipientsArray=countries.sort();
var reportRecipientsDuplicate=[];
对于(变量i=0;i
如何检查任何项目是否发生超过或等于3次?谢谢您可以使用
reduce
方法来轻松解决此问题reduce
方法通过应用提供的回调函数创建一个新数组或对象
reduce()
方法对累加器和
数组中的每个元素(从左到右)将其缩减为
单一值
var国家=[“印度”、“澳大利亚”、“孟加拉国”、“印度”、“印度”、“新西兰”、“新西兰”、“巴基斯坦”、“巴基斯坦”、“西印度群岛];
var统计=国家/地区。减少(功能(obj,elem){
obj[elem]=obj[elem]| | 0;
obj[elem]++;
返回obj;
},{});
(统计中的国家){
如果(统计数字[国家]>=3)
控制台日志(国家);
}
您可以使用reduce
方法来轻松解决此问题reduce
方法通过应用提供的回调函数创建一个新数组或对象
reduce()
方法对累加器和
数组中的每个元素(从左到右)将其缩减为
单一值
var国家=[“印度”、“澳大利亚”、“孟加拉国”、“印度”、“印度”、“新西兰”、“新西兰”、“巴基斯坦”、“巴基斯坦”、“西印度群岛];
var统计=国家/地区。减少(功能(obj,elem){
obj[elem]=obj[elem]| | 0;
obj[elem]++;
返回obj;
},{});
(统计中的国家){
如果(统计数字[国家]>=3)
控制台日志(国家);
}
const数组=[“印度”、“澳大利亚”、“孟加拉国”、“印度”、“印度”、“新西兰”、“新西兰”、“巴基斯坦”、“巴基斯坦”、“西印度群岛];
_.each(q.uniq(q.filter)数组,函数(v){
返回过滤器(数组,函数(v1){
返回v1==v;
}).长度>2;
})),功能(i){
控制台日志(i);
});
const数组=[“印度”、“澳大利亚”、“孟加拉国”、“印度”、“印度”、“新西兰”、“新西兰”、“巴基斯坦”、“巴基斯坦”、“西印度群岛];
_.each(q.uniq(q.filter)数组,函数(v){
返回过滤器(数组,函数(v1){
返回v1==v;
}).长度>2;
})),功能(i){
控制台日志(i);
});
尝试以下代码:
var countries = ["India" , "Australia" , "Bangladesh" , "India" , "India" , "New Zealand" , "New Zealand" , "Pakistan" , "Pakistan" , "West Indies","New Zealand"];
var recipientsArray = countries.sort();
checkedWords = [];
for (var i = 0; i < recipientsArray.length; ++i) {
var count = 0;
for(var j=i;j<recipientsArray.length;j++){
if(checkedWords.indexOf(recipientsArray[i]) > -1){
continue;
}
if(recipientsArray[i] == recipientsArray[j]){
count = count+1;
}
}
console.log(count);
if(count >= 3){
alert(recipientsArray[i]);
}
checkedWords.push(recipientsArray[i]);
}
var国家=[“印度”、“澳大利亚”、“孟加拉国”、“印度”、“印度”、“新西兰”、“新西兰”、“巴基斯坦”、“巴基斯坦”、“西印度群岛”、“新西兰”];
var recipientsArray=countries.sort();
校验字=[];
对于(变量i=0;i=3){
警报(接收者警报[i]);
}
勾选词。推送(接受者搜索[i]);
}
我希望这能回答您的问题:)请尝试以下代码:
var countries = ["India" , "Australia" , "Bangladesh" , "India" , "India" , "New Zealand" , "New Zealand" , "Pakistan" , "Pakistan" , "West Indies","New Zealand"];
var recipientsArray = countries.sort();
checkedWords = [];
for (var i = 0; i < recipientsArray.length; ++i) {
var count = 0;
for(var j=i;j<recipientsArray.length;j++){
if(checkedWords.indexOf(recipientsArray[i]) > -1){
continue;
}
if(recipientsArray[i] == recipientsArray[j]){
count = count+1;
}
}
console.log(count);
if(count >= 3){
alert(recipientsArray[i]);
}
checkedWords.push(recipientsArray[i]);
}
var国家=[“印度”、“澳大利亚”、“孟加拉国”、“印度”、“印度”、“新西兰”、“新西兰”、“巴基斯坦”、“巴基斯坦”、“西印度群岛”、“新西兰”];
var recipientsArray=countries.sort();
校验字=[];
对于(变量i=0;i=3){
警报(接收者警报[i]);
}
勾选词。推送(接受者搜索[i]);
}
我希望这能回答您的问题:)
var countries=..
只要在数组中循环reportRecipientsDuplicate
并在遇到大于或等于3的数字时提醒消息。数组是使用(方括号)[]定义的。请编辑您的代码。var countries=..
只要在数组中循环reportRecipientsDuplicate
并在遇到大于或等于3的数字时提醒消息。数组是使用(方括号)[]定义的。请编辑您的代码。