JavaScrit(内置对象)

JS

1.Array(数组)

语法:

var ShuZu=new Array();

1.如果知道Array数组中有几个值,可以直接在括号内写入它的数组个数。
如:

var ShuZu=new Array(3);//表示数组内有三个值。 

2.Array数组可以直接写入值,因为是数组所以最少要有两个值。数组中的值可以是不同类型。(在大多数语言中 数组中的值必须是一个类型)
如:

var ShuZu=nwe Array("我是数字","我有四个值","最后一个是数值",1186);

数组的读写:

var ShuZu=new Array(3);
/*赋值方法*/
ShuZu[0]="方括号中指的是索引";
ShuZu[1]="Array(3)括号中的3 指的是有三个数值";
ShuZu[2]="我的索引值为2,我所在Array的位置是3,索引是从0开始的";
/*调用*/
ShuZu[1];

数组的长度
数组的个数是,索引加一。如果给有三个值的数组第[99]索引赋值,那么这个数组的长度为100;
我们也可以给数组的长度赋值,起到裁剪或加长数组。(不建议这样使用)

var ShuZu=nwe Array("我是第一个值","我是第二个值");
ShuZu[99]="我是数组第一百的值";
alert(ShuZu.length);
ShZu.length=2;
alert(ShuZu);

数组的遍历

var ShuZu=nwe Array("我是第一个值","我是第二个值");
for(var i=0;i<ShuZu.length;i++){
	alert(ShuZu(i));
}

1.1 数组的栈方法(头尾的添加删除) 栈(据结构暂不深究)

1.1.1push(); 添加到数组的最后

 var ShuZu=new Array("我是第一个值","我是第二个值");
 			ShuZu.push("我可以添加多个值",1,2,3);
 			console.log(ShuZu);

如果给push();放到 一个变量中,你会惊奇的发现变量的值,是数组原本值得个数加上push()中值得个数的和。
如:

 var ShuZu=new Array("我是第一个值","我是第二个值");
 		var len=ShuZu.push("我可以添加多个值",1,2,3);
 			console.log(len);

1.1.2 unshift();添加到数组的最前

 var ShuZu=new Array("我是第一个值","我是第二个值");
 			ShuZu.unshift("我们再前面",1,2,3);
 			console.log(ShuZu);

获取长度
.如:

 var ShuZu=new Array("我是第一个值","我是第二个值");
 		var len=ShuZu.unshift("我可以添加多个值",1,2,3);
 			console.log(len);

1.1.3 pop();删除最后一个值

 var ShuZu=new Array("我是第一个值","我是第二个值");
 		var s=ShuZu.pop(); //删除最后一个,并且获取。
 			console.log(s);

1.1.4 shift();删除第一个值

 var ShuZu=new Array("我是第一个值","我是第二个值");
 		var s=ShuZu.shift(); //删除第一个,并且获取。
 			console.log(s);

1.2数组的排序和连接

1.2.1 join();把数组连接成字符串

	var ShuZu=[0,1,2,];//也能这样来写数组
	var S=ShuZu.join();/*括号内可添加字符,改变数组变字符串的链接符*/
	var A=ShuZu.join("");/*空字符*/
	var B=ShuZu.join("*");/**号*/
	console.log(S);
	console.log(A);
	console.log(B);
	console.log(typeof(S));

join();的括号内填写什么字符,数组变成字符串将会用什么字符链接。

1.2.2 reverse();数组反序

var ShuZu=[1,5,9,6,3,5,4,a]
var S=ShuZu.reverse();
console.log(S);

1.2.3 sort(); 数组排序

	var ShuZu=["b","cb","a","caa","d","A"];
	var ShuZu1=[1,12,25,3,48,100];
	console.log(ShuZu.sort());
	console.log(ShuZu1.sort());

如果括号内没使用参数,是按照字符编码的顺序进行排序。
先根据第一个字符比较大小,第一个字符一样再比较第二个字符,以此类推。
字符编码(ASCII)

function a(a,b){
		return a - b;
	}
	var arr =["10","5",40,"25",1000,"1",100];
	console.log(arr);
	console.log(arr.sort(a));
	var arr =["10","5",40,"25",1000,"1",100];
	console.log(arr);
	console.log(arr.sort(function(a,b){return a-b}));

上面两个效果一样。 字符数和数值的字符编码不同!!!

 console.log(arr.sort(function(a,b){return b-a}));

降序~~

1.2.4 concat();链接数组

var ShuZu=[1,2,3,4];
var ShuZu1=["a","b","c"];
var ShuZu2=["5","c",7];
var ShuZu4=ShuZu.concat(ShuZu1,ShuZu2,[1,5,9,3]);
console.log(ShuZu4);

1.2.5 slice();截取数组中的数据

slice();括号内有两个值,开始值必须设置,开始值设置为0时从第一个值开始截取,能为负值 倒着数第几个。(也可以理解数组长度减去多少)
第二个值设置结束为止,不设置时默认截取后边全部的值。值不能为负数。且再第一个值得右侧(括号内 的值为索引)
如:我们截取b,c,d

	var ShuZu=["a","b","c","d","e"];
      /*索引值:  0 , 1 , 2 , 3 , 4  */
	var b=ShuZu.slice(1,4);/*从1截取包括1,到4结束不包括4*/
	var c=ShuZu.slice(-3,4);/*第一值能为负值,倒着数第三个(也可以理解数组长度减去3),第二值不能为负数。且再第一个值得右侧*/
	/*(-3,4)等价于(2,4)*/
	console.log(b);
	console.log(c);

1.3数组的增删改查

1.3.1 splice();删除,插入,替换

括号内第二个值:不写则删除以后全部;设置0则不删除,并且 splice();没有返回值。

删除
splice();括号内有两个值,开始值必须设置,开始值设置为0时从第一个值开始删除。 能为负值 倒着数第几个。(也可以理解数组长度减去多少)。
第二个值与索引无关。是从第一个值起删除几个。

var ShuZu=["a","b","c","d","e"];
	var c=ShuZu.splice(2,1);/*从索引2删除1个*/
	console.log(ShuZu);
	console.log(c);

插入
splice();括号内有两个值,开始值必须设置,开始值设置为0时从第一个值开始删除。 能为负值 倒着数第几个。(也可以理解数组长度减去多少)。
第二个值为0。(第二个值是管理删除的,插入式设置为0)
后面的值是添加的值,值与值之间用英文逗号隔开。

var ShuZu=["a","b","c","d","e"];
	var c=ShuZu.splice(2,0,5,6);
	console.log(ShuZu);
	console.log(c);

替换
splice();括号内有两个值,开始值必须设置,开始值设置为0时从第一个值开始删除。 能为负值 倒着数第几个。(也可以理解数组长度减去多少)。
第二个值与索引无关。是从第一个值起删除几个。
后面的值是添加的值,值与值之间用英文逗号隔开。

var ShuZu=["a","b","c","d","e"];
	var c=ShuZu.splice(2,2,5);
	console.log(ShuZu);
	console.log(c);

我们可以删除1个添加多个值,也可以删除多个值添加1个值。

1.3.2 indexOf() ;与lastIndexOf();/从头查找与从未查找/

第一个值是要查找的值,第二值是开始查找的位置。(第二值为负时,倒数即可,不再看索引)
 indexOf();从前往后查找。
 astIndexOf();从后向前查找。
var ShuZu=["a","b","c","d","e"];
var a=ShuZu.indexOf("c",4) ;
var b=ShuZu.lastIndexOf("c",4);
var c=ShuZu.indexOf("c",-4) ;
var d=ShuZu.lastIndexOf("c",-4);
	console.log(a);
	console.log(b);
	console.log(c);
	console.log(d);

兼容:IE9+,Firefox,Safari,Opera,Chrome

解决兼容:

function ArrayIndexOf(arr,value){
	for(var i=0;i<arr.length;i++){
		if(arr[i]===value){
			return i;
		}
	}
	return -1;
}

2. String(字符串)

2.1 查询

2.1.1 charAt()与charCodeAt()/获取某个字符与获取某个字符的ASCII值/

这里指的索引和数组中的有些相似,数组中以每个值为单位,这里以每个字符为单位。

	var a="asdfg hjkl";
	索引:  0123456789
  	console.log(a.charAt(3));/*括号内写入索引,找字符反回字符*/
 	console.log(a.charCodeAt(3));/*括号内写入索引,找字符返回字符编码。*/

2.1.2 indexOf() ;与lastIndexOf();/从头查找与从未查找/ 与1.3.2 要求相同。

	var a="asdfg hjkl";
	索引:  0123456789
  	console.log(a.indxOf("g",3));
 	console.log(a.charCodeAt("fg",-7));

唯一区别:在数组中只能写一个值,这里可以写入多个字符。

2.2 截取

2.2.1 slice(); 截取 和1.2.5一样

	var a="asdfg hjkl";
	索引:  0123456789
	console.log(a.slice(5,10));
	console.log(a);

截取时从第一参数开始,剪切时不包括第二参数。
第二参数省略截取到最后
参数为负,长度加该负数即可。

2.2.2 substring();截取和slice();几乎一样

区别:substring()括号中设置负数时,默认转换成0。
如:(-7,-1);返回值则是空字符串
如:(-7,5)和(5,-7)是一样的效果。substring();默认把小值设为起点值。

	var a="asdfg hjkl";/*注意有个空格*/
	console.log(a.substring(6,3));
	console.log(a);

2.2.3 substr();截取和slice();几乎一样

区别:

  1. substr()第二个参数。是截取的长度
  2. 第一个值为负数时,倒查(长度加改值)。第二个参数为负数时不截取。
	var a="asdfg hjkl";/*注意有个空格*/
	console.log(a.substr(5,3));
	console.log(a);
	a="asdfg hjkl";
	console.log(a.substr(-5,3));
	console.log(a);
	a="asdfg hjkl";
	console.log(a.substr(5,-3));
	console.log(a);

2.3 转换数组

2.3.1 split(字符);

	var a="asdfg hjkl";/*注意有个空格*/
	var arr=a.split(" ");/*以空格为分隔条件*/
	var b="2018/08/08"
	var brr=b.split("/");
	console.log(a);
	console.log(b);
	console.log(arr);
	console.log(brr);

2.4 替换

2.4.1 replace(被替换的字符,替换成的字符);

字符串中有多个于被替换的字符相同时,只替换第一个。

	var a="asdfg hjkl";/*注意有个空格*/
	var arr=a.replace(" ",";");/*以空格为分隔条件*/
	console.log(a);
	console.log(arr);

##2.5 大小写转换

2.5.1 toUpperCase();转换成大写

	var a="asdfg hjkl";/*注意有个空格*/
	var arr=a.toUpperCase();

	console.log(a);
	console.log(arr);

2.5.2 toLowerCase();转换成小写

	var a="ASDFF GGG";/*注意有个空格*/
	var arr=a.toUpperCase();
	var b=arr.
	console.log(a);
	console.log(arr);

3. Number (数值)

3.1 查找

不能有非数值的字符的值,有非数值字符值返回结果为NaN

3.1.1 Math.min(数值1,数值2,… ); 返回最小值

 var a=Math.min(5,-5,10,0,9,"-100");
 var b=Math.min(5,-5,10,0,9,"aaa");
 	console.log(a);
	console.log(b);
 

3.1.2 Math.max(数值1,数值2,…); 返回最大值

 var a=Math.max(5,-5,10,0,9,"100");
 var b=Math.max(5,-5,10,0,9,"aaa");
 	console.log(a);
	console.log(b);

3.2 取整

不能有非数值的字符的值和多个小数点,有非数值字符值返回结果为NaN

3.2.1 Math.ceil(); 向上取整

 var a=Math.ceil(18.6);
 var b=Math.ceil("18.6");
 var c=Math.ceil("18.6.1");
 var d=Math.ceil("aaa");
 	console.log(a,b,c,d);

3.2.2 Math.floor();向下取证

 var a=Math.floor(18.6);
 var b=Math.floor("18.6");
 var c=Math.floor("18.6.1");
 var d=Math.floor("aaa");
 	console.log(a,b,c,d);

3.2.3 Math.round();四舍五入

 var a=Math.round(18.6);
 var b=Math.round("18.4");
 var c=Math.round("18.6.1");
 var d=Math.round("aaa");
 	console.log(a,b,c,d);

3.3 Math.abs();绝对值

不能有非数值的字符的值和多个小数点,有非数值字符值返回结果为NaN

 var a=Math.abs(-18.6);
 var b=Math.abs("-18.6");
 var c=Math.abs("-18.6.1");
 var d=Math.abs("-aaa");
 	console.log(a,b,c,d);

3.4Math.random();随机数(从0到1 不包含1)

var a=Math.random();
console.log(a);

从n到m之间的随机整数的公式

 var a=Math.floor(Math.random()*(m-n+1)+n);

如:3-9

 var a=Math.floor(Math.random()*(9-3+1)+3);
 console.log(a);

4.Date(日期)

4.1 获取当前日期和时间

获取当前时间对象

	var a=new Date();
	console.log(a);

4.2 日期年月日时分秒和星期的获取

4.2.1 getFullYear();四位年份

	var a=new Date(),b=a.getFullYear();
	console.log(b+"年");

4.2.2 getMonth(); 月份(0-11)

返回值0是指1月 返回值加1等于月份

	var a=new Date(),b=a.getMonth();
	console.log(b+1+"月");

4.2.3 getDate(); 日

	var a=new Date(),b=a.getDate();
	console.log(b+"日");

4.2.4 getDay();星期(0-6)

    var c=["周日","周一","周二","周三","周四","周五","周六"];
	var a=new Date(),b=a.getDay();
	console.log(c[b]);

4.2.5 getHours();小时

	var a=new Date(),b=a.getHours();
	console.log(b+"小时");

4.2.6 getMinutes();分

	var a=new Date(),b=a.getMinutes();
	console.log(b+"分");

4.2.7 getSeconds();秒

	var a=new Date(),b=a.getSeconds();
	console.log(b+"秒");

4.2.8 getTime();毫秒

从1970年1月1日00:00:00开始到现在时间的毫秒数

	var a=new Date(),b=a.getTime();
	console.log(b+"毫秒");

4.2 日期年月日时分秒和星期的设置

4.2.1 setFullYear();四位年份

	var a=new Date(),a.setFullYear(2000);
	console.log(a);

4.2.2 setMonth(); 月份

写入的指是要减1:如12月则写入11
写入15返回值为年数加1年 月数为15-11

	var a=new Date(),a.setMonth(15);
	console.log(a);

4.2.3 setDate(); 日

	var a=new Date(),a.setDate();
	console.log(a);

例题:10天后是星期几

	var a=new Date();
	a.setDate(a.getDate();+10);
	console.log(a.getDay());

4.2.5 setHours();小时

	var a=new Date(),a.setHours();
	console.log(a);

4.2.6 setMinutes();分

	var a=new Date(),b=a.setMinutes();
	console.log(a);

4.2.7 setSeconds();秒

	var a=new Date(),b=a.setSeconds();
	console.log(a);

4.2.8 setTime();毫秒

从1970年1月1日00:00:00开始到现在时间的毫秒数

	var a=new Date(),b=a.setTime(1000);
	console.log(a);

4.3 创建日期对象的方法

4.3.1 Data(年,月,日);

在Date后的括号中写入年月日月的值会被加1

	var a=new Date(2000,8,17); 
	console.log(a);

4.3.2 Data(毫秒);

在Date后的括号中写入从1970年1月1 日00:00:00开始计算的毫秒数

	var a=new Date(10000000000); 
	console.log(a);
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值