js操作数组函数实例小结


Posted in Javascript onDecember 10, 2015

本文实例讲述了js操作数组函数。分享给大家供大家参考,具体如下:

1.删除数组中指定的元素

/**
 * 参考实例
foreach = function (obj, insp){
if(obj== null && obj.constructor != Array){

return [];
}
//obj是要处理的数组,obj==null 表示对象尚未存在;obj.constructor != Array 表示对象obj的属性的构造函数不是数组;
//constructor属性始终指向创建当前对象的构造函数。两个条件均满足,则返回空数组[];
//下面对constructor属性作进一步了解。
var obj= [1, 2, 3, 4]; // 等价于 var obj= new Array(1, 2, 3, 4);
console.log(obj.constructor === Array); // 返回true 表明obj的构造函数为Array;
var foo= function() { }; // 等价于 var foo = new Function();
console.log(foo.constructor === Function); // 返回true 表明foo的构造函数为Function;
var obj = new Foo(); //由构造函数实例化一个obj对象
console.log(obj.constructor === Foo); // 返回true 表明obj的构造函数为Foo;
 */
//删除数组中指定的元素
function del(val, arr)
{
  //检测参数
  if (arr == null && arr.constructor != Array) {
    return [];
  }
  var newarr = []; //不存在的保存到新数组中
  for (var i = 0; i < arr.length; i++) {
    if (arr[i] != val)
      newarr.push(arr[i]);
  }
  return newarr;
}
alert(del(2, [1, 2, 3, 4, 5, 2]));

2.去除重复的元素

/**
 *去除数组中重复的元素
把元素的值存为一个新数组的key,key是不可以重复的,然后变量次数组即可
 */
function unique(data) {
  data = data || [];
  var a = {};
  len = data.length;
  for (var i = 0; i < len; i++) {
    var v = data[i];
    if (typeof(a[v]) == 'undefined') {
      a[v] = 1;
    }
  };
  data.length = 0;
  for (var i in a) {
    data[data.length] = i;
  }
  return data;
}
alert(unique([12,12,12,34]));

3.删除数组指定下标的元素

/**
 *删除数组的指定下标元素 
 *
 * i 的值是一直在变的,n的值是只有if条件成立的时候才会变(会依次递增)
 */
Array.prototype.remove=function(dx)
 {
  if(isNaN(dx)||dx>this.length){return false;}
  for(var i=0,n=0;i<this.length;i++)
  {
    if(this[i]!=this[dx])
    {
      this[n++]=this[i]
    }
  }
  this.length-=1
 }
var arr = [1,2,3,4,2,5];
alert(arr);
arr.remove(2);
alert(arr);

希望本文所述对大家JavaScript程序设计有所帮助。

Javascript 相关文章推荐
javascript dom代码应用 简单的相册[firefox only]
Jun 12 Javascript
SyntaxHighlighter语法高亮插件使用说明
Aug 14 Javascript
jQuery避免$符和其他JS库冲突的方法对比
Feb 20 Javascript
js获取指定日期周数以及星期几的小例子
Jun 27 Javascript
JavaScript获取DOM元素的11种方法总结
Apr 25 Javascript
AngularJS中实现动画效果的方法
Jul 28 Javascript
AngularJS 中文API参考手册
Jul 28 Javascript
jQuery.form.js插件不能解决连接超时(timeout)的原因分析及解决方法
Oct 14 Javascript
解析ajaxFileUpload 异步上传文件简单使用
Dec 30 Javascript
详解Vue使用 vue-cli 搭建项目
Apr 20 Javascript
Vue中使用webpack别名的方法实例详解
Jun 19 Javascript
浅谈Vue render函数在ElementUi中的应用
Sep 06 Javascript
SpringMVC框架下JQuery传递并解析Json格式的数据是如何实现的
Dec 10 #Javascript
jQuery自定义动画函数实例详解(附demo源码)
Dec 10 #Javascript
javascript图片预加载完整实例
Dec 10 #Javascript
JavaScript动态插入CSS的方法
Dec 10 #Javascript
jQuery实现监控页面所有ajax请求的方法
Dec 10 #Javascript
js表单提交和submit提交的区别实例分析
Dec 10 #Javascript
浅谈javascript中onbeforeunload与onunload事件
Dec 10 #Javascript
You might like
简单的过滤字符串中的HTML标记
2006/12/25 PHP
在任意字符集下正常显示网页的方法一
2007/04/01 PHP
PHP全概率运算函数(优化版) Webgame开发必备
2011/07/04 PHP
php-fpm配置详解
2014/02/12 PHP
Codeigniter实现智能裁剪图片的方法
2014/06/12 PHP
Yii中的cookie的发送和读取
2016/07/27 PHP
from 表单提交返回值用post或者是get方法实现
2013/08/21 Javascript
node.js中的console.dir方法使用说明
2014/12/10 Javascript
jquery实现翻动fadeIn显示的方法
2015/03/05 Javascript
延时加载JavaScript代码提高速度
2015/12/27 Javascript
JS实现的简单拖拽功能示例
2017/03/13 Javascript
详解vue-cli中模拟数据的两种方法
2018/07/03 Javascript
Bootstrap fileinput 上传新文件移除时触发服务器同步删除的配置
2018/10/08 Javascript
浅谈VueJS SSR 后端绘制内存泄漏的相关解决经验
2018/12/20 Javascript
JS块级作用域和私有变量实例分析
2019/05/11 Javascript
vue2.0 实现富文本编辑器功能
2019/05/26 Javascript
详解Vue项目引入CreateJS的方法(亲测可用)
2019/05/30 Javascript
如何在微信小程序中存setStorage
2019/12/13 Javascript
基于node+vue实现简单的WebSocket聊天功能
2020/02/01 Javascript
在Vue中实现随hash改变响应菜单高亮
2020/03/09 Javascript
[15:39]教你分分钟做大人:龙骑士
2014/10/30 DOTA
python远程登录代码
2008/04/29 Python
Python Web开发模板引擎优缺点总结
2014/05/06 Python
python使用筛选法计算小于给定数字的所有素数
2018/03/19 Python
python操作redis方法总结
2018/06/06 Python
python pandas 对时间序列文件处理的实例
2018/06/22 Python
彻底理解Python中的yield关键字
2019/04/01 Python
html5实现canvas阴影效果示例
2014/05/07 HTML / CSS
初中生三年学习生活的自我评价
2013/11/03 职场文书
国贸专业大学生职业生涯规划范文
2014/01/10 职场文书
便利店促销方案
2014/02/20 职场文书
各营销点岗位职责范本
2014/03/05 职场文书
销售目标责任书
2014/07/23 职场文书
工作岗位职责范本
2015/02/15 职场文书
航班延误投诉信
2015/07/02 职场文书
中国十大神话动漫电影排行榜 哪吒登顶 白蛇缘起排第七
2022/03/21 国漫