如何从javascript中的var数组列表中获取不同的值 [英] how to get distinct value from var array list in javascript
本文介绍了如何从javascript中的var数组列表中获取不同的值的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
if (_arrCheckpoints.length > 0) {
var _yr = new Array();
for (var i = 0; i < _arrCheckpoints.length; i++) {
var _Ayr = _arrCheckpoints[i].substring(_arrCheckpoints[i].length - 4)
_yr.push(_Ayr);
}
}
output _yr = 2014
2014
2014
2013
2013
2013
i need _yr = 2014
2013
推荐答案
请尝试:
不使用库的示例。这需要两个新的原型函数,包含和唯一的
Please try:
Example that uses no libraries. This requires two new prototype functions, contains and unique
Array.prototype.contains = function(v) {
for(var i = 0; i < this.length; i++) {
if(this[i] === v) return true;
}
return false;
};
Array.prototype.unique = function() {
var arr = [];
for(var i = 0; i < this.length; i++) {
if(!arr.contains(this[i])) {
arr.push(this[i]);
}
}
return arr;
}
You can then do:
var duplicates = [1,3,4,2,1,2,3,8];
var uniques = duplicates.unique(); // result = [1,3,4,2,8]
For more reliability, you can replace contains with MDN's indexOf shim and check if each element's indexOf is equal to -1: https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/Array/indexOf
示例:点击此处
if (_arrCheckpoints.length > 0) {
var _yr = new Array();
var x = 0;
var _strHTML2 = "<div id='yrd'><ul class='nav'>";
for (var i = 0; i < _arrCheckpoints.length; i++) {
var _Ayr = _arrCheckpoints[i].substring(_arrCheckpoints[i].length - 4)
if (_yr != _Ayr) {
x++;
if (_yr[i-x] != _Ayr) {
_yr.push(_Ayr);
}
}
}
这篇关于如何从javascript中的var数组列表中获取不同的值的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文