五、数组对象Array
数组对象用于存放一组数据,JavaScript语言并不像Swift语言那样强调类型,因此数组中存放的元素类型十分*,JavaScript中数组的相关方法示例如下:
//有三种方式进行数组的构造
//构造空数组
var array1 = new Array();
//构造指定个数元素的数组
var array2 = new Array(5);
//构造初始数组
var array3 = new Array(1,2,3,4)
//length属性可以获取数组元素个数
console.log(array3.length);//4
//进行数组连接
console.log(array3.concat([5,6],['q','w']));
//将数组中所有元素以指定分隔符进行拼接为字符串
console.log(array3.join("-"));
//删除数组中的最后一个元素
array3.pop();
console.log(array3);
//向数组中添加一个元素
array3.push(5);
console.log(array3);
//进行数组颠倒
array3.reverse();
console.log(array3);
//删除数组中的第一个参数
array3.shift();
console.log(array3);
//向数组开头插入一些元素
array3.unshift(1,1,1);
console.log(array3);
//对数组元素进行排序
array3.sort(function(a,b){
if (a>b) {
return true;
}else{
return false;
}
});
console.log(array3);
//删除数组中的元素 并插入其他元素
//第1个参数为参数元素的位置
//第2个参数为删除元素的个数
//之后可以有任意个参数,作为插入元素
array3.splice(0,2,'c',5);
console.log(array3);
//将数组转换为字符串 使用逗号拼接
console.log(array3.toString());
console.log(array3.toLocaleString());
需要注意,数组的排序方法sort()中需要传入一个排序函数,这个函数中会传入两个参数,分别描述数组中相邻的两个元素,如果需要交换位置,返回true即可,否则返回false即可。另外,数组的toString()方法与join()方法作用相似,不同的是join()方法更加*,开发者可以通过参数决定进行拼接的方式,如果不传参数,则默认也会以逗号进行分割拼接。
六、关于Boolean对象
Boolean对象用来描述逻辑值,JavaScript中的Boolean对象可以理解为对布尔值的一种包装,当使用构造函数来进行Boolean对象的创建时,如果不传参数,默认会构造false值的对象包装,如下:
var b1 = new Boolean();
console.log(b1);//[Boolean: false]
如果将Boolean()当做函数来使用,将会返回一个基本布尔值,如下:
var b2 = Boolean();
console.log(b2);//false
在创建布尔值时,下面这些传参都将创建包装false的布尔对象:
var myBoolean=new Boolean();
var myBoolean=new Boolean(0);
var myBoolean=new Boolean(null);
var myBoolean=new Boolean("");
var myBoolean=new Boolean(false);
var myBoolean=new Boolean(NaN);
var myBoolean=new Boolean(undefined);
除了上面所列举的参数情况外,其余的都将构造true包装对象。
七、JavaScript中的数学对象及方法
JavaScript中还内置了一个Math数学对象,这个对象中封装了许多数学中常用的常数和算术方法,示例如下:
//Math对象
//自然对数e
console.log(Math.E);//2.718281828459045
//2的自然对数
console.log(Math.LN2);//0.6931471805599453
//10的自然对数
console.log(Math.LN10);//2.302585092994046
//以2为底e的对数
console.log(Math.LOG2E);//1.4426950408889634
//以10为底e的对数
console.log(Math.LOG10E);//0.4342944819032518
//圆周率
console.log(Math.PI);//3.141592653589793
//根号2的倒数
console.log(Math.SQRT1_2);//0.7071067811865476
//根号2
console.log(Math.SQRT2);//1.4142135623730951
//求绝对值函数
console.log(Math.abs(-5));//5
//求反余弦函数
console.log(Math.acos(0.5));
//求反正弦函数
console.log(Math.asin(0.5));
//求反正切函数
console.log(Math.atan(1));
//求到(x,y)点的角度
console.log(Math.atan2(1,0));
//进行向上舍入
console.log(Math.ceil(1.3));//2
//进行向下舍入
console.log(Math.floor(1.3));//1
//求自然对数
console.log(Math.log(10));//2.302585092994046
//返回最大值
console.log(Math.max(1,2));//2
//返回最小值
console.log(Math.min(1,2));//1
//求幂函数
console.log(Math.pow(10,2));//100
//取0-1之间的随机数
console.log(Math.random());
//进行四舍五入
console.log(Math.round(1.3));//1
//求正弦值
console.log(Math.sin(2));
//求余弦值
console.log(Math.cos(2));
//求正切值
console.log(Math.tan(1));