export default {
install(Vue){
/**
* 返回val在当前列表内的位置
*/
Array.prototype.indexOf = function(val) {
for (var i = 0; i < this.length; i++) {
if (this[i] === val) return i;
}
return -1;
};
/**
* 返回obj在当前列表内的位置,通过obj内部的key值(需要有唯一的"key")
*/
Array.prototype.indexOfObj = function(obj){
for (var i = 0; i < this.length; i++) {
if (this[i].key === obj.key) return i;
}
return -1;
};
/**
* 返回obj在当前列表内的位置,通过obj内部的key值(该键值可以自定义)
*/
Array.prototype.indexOfObjWithKey = function(obj,key){
for (var i = 0; i < this.length; i++) {
if (this[i][key] === obj[key]) return i;
}
return -1;
};
/**
* 从列表内移除val
*/
Array.prototype.remove = function(val) {
var index = this.indexOf(val);
if (index > -1) {
this.splice(index, 1);
}
return index
};
/**
* 若是列表内不存在val
* 往列表推入val
* 反之跳过
*/
Array.prototype.pushUnique = function(val) {
var index = this.indexOf(val);
if(index === -1){
this.push(val);
}
};
/**
* 若是列表内不存在该对象(需要有唯一的"key")
* 往列表推入object
* 反之跳过
*/
Array.prototype.pushUniqueObj = function(obj) {
var index = -1;
for(let i=0;i<this.length;i++){
// console.log(this[i]["key"]);
// console.log(obj["key"]);
if(this[i]["key"] === obj["key"]){
index = i;
}
}
if(index < 0 ){
this.push(obj)
}
};
/**
* 若是列表内不存在该对象(我们通过传入的关键字key来区分是否为同一个对象)
* 往列表推入object
* 反之跳过
*/
Array.prototype.pushUniqueObjWithKey = function(obj,key) {
var index = -1;
for(let i=0;i<this.length;i++){
if(this[i][key] === obj[key]){
index = i;
}
}
if(index < 0 ){
this.push(obj)
}
}
}
}
版权声明:本文为jackwmj12原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。