Javascript学习系列文章,一方面作为学习记录,另一方面日后可以参考,所有内容均为个人的学习理解
数组简介:
1、数组的每一项可以保存任何类型的数据
2、创建数组:new Array() ,可带参数,数字表示长度,字符等表示内容,或者直接 []
3、数组的length属性不只是只读的,可以通过改变length的大小,来向数组的末尾增加或者删除项,数组的最后一项始终是length-1
数组检测:
1、当只有一个框架,也就是一个作用域环境的时候可以用。因为Array是window的属性
if (value instanceof Array){
//对数组执行某些操作
}
2、为了解决作用域环境的问题,ECMAScript 5引入了Array.isArray()方法,但是支持性IE9+
if (Array.isArray(value)){
//对数组执行某些操作
}
3、未实现这个方法中检测数组
function isArray(value){
return Object.prototype.toString.call(value) == "[object Array]";
}
基于这个思路可以测试正则表达式或者原生函数,前提是Object.prototype.toString()本身未修改
Object.prototype.toString方法是返回一个[object NativeConstructorName]格式的字符串,而每个类的内部都有一个[[Class]]属性,这个属性就是上面字符串的构造函数名。
转换方法:
1、所有对象都具有 toLocaleString()、toString()和 valueOf()方法
数组调用toString()这个方法,返回字符串,数组项拼接起来,以逗号分开。
join()方法,可以添加一个参数,作为分隔符来分割数组,返回字符串。默认以逗号分割。
最后,数组中如果有null 或者undefined。那么调用以上方法返回的结果是字符串