js基础,数组和数组方法

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title>数组
		</title>
	</head>
	<body>
		<script type="text/javascript">
			function Person(name,age,gender){
				this.name = name;
				this.age = age;
				this.gender = gender;
			}
			var per = new Person('难吧',34,'男');
			per = Person.toString();
			console.log(per)
			//当直接在页面打印一个对象都是执行这个对象的tostring方法的返回值
			//如果不希望返回的值是[object object]可以为对象添加一个tostring方法
			Person.prototype.toString = function(){
				return"Person[name+'=name']"
			}
			
			
			/*垃圾回收机制
			每次新建一个对象都会在堆内占用一块地址,垃圾回收就可以将这块地址收回,在程序运行完成后将堆内数据清理
			垃圾过多会导致程旭运行变慢
			*/
		   // var Object = object();
		   // Object = null;
		   
		   /*操作数组
		   */
		  var arr = new Array();//创建数组
		  var aa  = new Array(1,2,3);//构造函数创建数组
		  var bb = [34,56,89];//字面量创建数组
		  var cc = [{'猪八戒':'男'},{'唐僧':'女'},{'孙悟空':'男'},{'白龙马':'女'}]//可以创建对象数组
		  arr[0]='zero';
		  arr[1]='one';
		  arr[2]='tow';
		  aa.push(12,13);//添加
		  aa[aa.length]=100;//向数组最后一位添加元素
		  aa.pop();//删除最后一位
		  aa.length = 10;//修改长度
		  aa.shift();//删除数组第一个元素
		  aa.unshift('0')//向数组开头添加元素
		  //数组遍历
		  for(i=0;i<bb.length;i++)
		  {
			  // alert(bb[i]);
		  };
		//foreach遍历数组,像这种函数,由我们创建不由我们调用的,称为回调函数
		//数组有几个元素执行几次,每次执行都会打印元素
		bb.forEach(function(value,index,a){
			console.log("a="+a);
			console.log(value);
			// consele.log(index);
		});
		
		
		//slice()和splice()方法
		// slice可以从数组中提取指定元素
		console.log(bb.slice(2,3));//提取索引2到3的元素
		//splice用来删除数组中的指定元素,第一个参数是开始的索引,第二个参数删除的数量,第三个及之后将可以传递新的元素到删除以后的位置
		console.log(bb.splice(2,1,'张三','李四'))//删除后的数组	
		console.log(bb)
		
		
		
		
		// 数组去重
		var dd = [1,2,3,4,1,2,3];
		for(var i=0;i<dd.length;i++){
			for(var j=i+1;j<dd.length;j++){
				if(dd[i]==dd[j]){//如果出现相同元素则删除对应元素
				dd.splice(j,1);
					
				}
			}
		}
		//其他方法,concat,将数组合并成一个新数组并返回
		aa.concat(dd,bb);
		//join()方法可以将数组转换成一个字符串,可以填入参数当作分隔符
		result = dd.join();
		console.log(result);
		//reverse()用来反转数组
		ret = aa.reverse();
		console.log(ret);
		//sort可以对数组排序
		rest = aa.sort();
		console.log(dd);
		  console.log(arr);
		  console.log(aa);
		  console.log(bb);
		  console.log(cc);
		  console.log(arr.length);
		</script>
	</body>
</html>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值