JavaScript(四)Math & Array数组对象

作者:陈小白​​​​​​​

 

Math对象:提供对数据的数学计算。

Math对象用于执行数学任务。

 

Math对象属性

   属性                              描述

   E             返回算术常量e,即自然对数的底数(约等于2.718)。

  LN2            返回2的自然对数(约等于0.693)。

  LN10           返回10的自然对数(约等于2.302)。

  LOG2E          返回以2为底的e的对数(约等于1.414)。

  LOG10E         返回以10为底的e的对数(约等于0.434)。

  PI              返回以圆周率(约等于3.14159)。

  SQRTI_2         返回2的平方根的倒数(约等于0.707)。

  SQRT2          返回2的平方根(约等于1.414)。

 

Math对象方法

方法                描述

abs(x)        返回数的绝对值。

acos(x)       返回数的反余弦值。

asin(x)       返回数的反正弦值。

atan(x)       以介于-PI/2与PI/2弧度之间的数值来返回x的反正切值。

atan2(y,x)     返回从x轴到点(x,y)的角度(介于-PI/2与PI/2弧度之间)。

ceil(x)        对数进行上舍入。

cos(x)        返回数的余弦。

exp(x)        返回e的指数。

floor(x)       对数进行下舍入。

log(x)        返回数的自然对数(底为e)

max(x,y)      返回x和y中的最高值。

min(x,y)       返回x和y的最低值。

pow(x,y)       返回x的y次幂。

random()      返回0~1之间的随机数。

round(x)       把数四舍五入为最接近的整数。

Sin(x)         返回数的正弦。

Sqrt(x)           返回数的平方根。

Tan(x)        返回角的正切。

toSource()     返回该对象的源代码。

ValueOf         返回Math对象的原始值。

 document.write(Math.max(23, 1, 4) + "<br/>");//返回 23 和 1,4 中的最高值。

        document.write(Math.sin(Math.PI / 2) + "<br/>");//返回数的正弦。(返回圆周率(约等于3.14159)/2)

        document.write(Math.random());//返回 0 ~ 1 之间的随机数

 

Array数组对象

数组对象是一个对象的集合,里面的对象可以是不同类型的。数组的每一个成员对象都有一个“下标”,用来表示它在数组中的位置,是从0开始的

 

数组定义的方法:

  1. 定义一个空数组:var 数组名=new Array();
  2. 定义时指定有n个空元素的数组:var 数组名=new Array(n);
  3. 定义数组的时候,直接初始化数据:var 数组名=[<元素1>,<元素2>,<元素3>...];

我们定义myArray数组,并赋值,代码如下:

var myArray=[2,8,6];

说明:定义了一个数组myArray,里边的元素是:

myArray[0] = 2;myArray[1] = 8; myArray[2] =6.

数组元素使用:

数组名[下标]=值;

注意:数组的下标用括号括起来,从0开始。

 

数组属性:

Length用法:<数组对象>.length;返回;数组的长度,即数组里有多少个元素。它等于数组里最后一个元素的下标加一。

数组方法:见JavaScript文档

 

数组连接concat()

Concat()方法用于连接两个或多个数组。此方法返回一个新数组,不改变原来的数组。

语法:arrayObject.concat(array1,array2,...,arrayN)//array1 要连接的第一个数组arrayN第n个数组。

注意:该方法不会改变现有的数组,而仅仅会返回被连接的一个副本

 //var myarr1 = new Array(1, 2, 3);

            //var myarr2 = new Array(4, 5);

            //var myarr3 = new Array(6, 7);

            //document.write(myarr1.concat(myarr2) + "<br/>");

            //document.write(myarr1.concat(myarr2, myarr3) + "<br/>");

 

指定分隔符连接数组元素join()

Join()方法用于把数组中的所有元素放入一个字符串。元素是通过指定的分隔符进行分隔的。

语法:arrayObject.join(分隔符)

注意:返回一个字符串,该字符串把数组中的各个元素串起来,用<分隔符>置于元素之间。这个方法不影响数组原本的内容。我们使用join()方法,将数组的所有元素放入一个字符串中//var myarr = new Array(3);

            //myarr[0] = "I";

            //myarr[1] = "love";

            //myarr[2] = "JavaScript";

            //document.write(myarr.join()+"<br/>");//不指定特定字符:默认数组格式

            //document.write(myarr.join("-") + "<br/>");

 

数组排序sort()

Sort()方法使数组中的元素按照一定的顺序排列。

语法:arrayObject.sort(方法函数)

参数说明:方法函数可选参数,规定排序顺序,必须是函数

  1. 如果不指定<方法函数>,则按unicode码顺序排序。
  2. 如果指定<方法函数>,则按<方法函数>所指定的排序方法排序。

 myArray.sort(sortMethod);

注意:该函数要比较两个值,然后返回一个用于说明这两个值得相对顺序的数字。比较函数应该具有两个参数a和b,其返回值如下:

若返回值<=-1,则表示a在排序后的序列中出现在b之前。

若返回值<=-1 &&<1,则表示a和b具有相同的排序顺序。

若返回值>=1,则表示a在排序后的序列中出现在b之后。

        //1.使用sort()将数组进行排序,代码如下:从字面上对数组进行排序

            //a b c d e f g h i j k l m n o p q r s t u v w x y z        

            //var myarr1 = new Array("Hello", "John", "love", "JavaScript");

            0 1 2 3 4 5 6 7 8 9

            //var myarr2 = new Array("80", "16", "50", "6", "100", "1","0");

            //document.write(myarr1.sort() + "<br/>");

            //document.write(myarr2.sort() + "<br/>");

2.当存在数字大小要实现顺序或者倒序排序的时候, 如要实现这一点,就必须使用一个排序函数,代码如下:从数值上对数组进行排序。

 

            //var myarr = new Array("80", "16", "50", "6", "100", "1");

            //document.write(myarr + "<br>");

 

            //function sortnum(a, b) {

            //    return b - a;

            //    //升序a - b,如降序,把“a - b”该成“b - a”

            //}

 

            //document.write(myarr.sort(sortnum));

自我总结,不足之处还望见谅!大神们,求指点……

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值