## 数组 Array ### 定义 ```js let arr1 = ["周一", "周二", "周三"]; let arr2 = new Array("2019年", "2020年", "2021年"); ``` ### 属性 Array 具有 length 属性,即可获取也可设置。 ```js // 获取数据长度 var arrayLength = arr.length; // 设置数组长度(超出数组长度的元素将被抛弃) arr.length = 2; ``` ### 方法 pop(); // 取出并删除数组最后一个元素 push(element); // 在数组末尾追加元素 shifit(); // 取出并删除数组第一个元素 unshift(element); // 在数组开头添加元素 indexOf(element); // 查找元素的第一个位置 lastIndexOf(element); // 查找元素的最后一个位置 splice(start, length, [e1, ...]); // 从start位置开始删除length个元素,并插入后面的参数元素(相当于替换) ```js var arr1 = [2, 4, 6]; arr1.splice(1, 2, 1, 3, 5); console.log(arr1); // 输出 '[2, 1, 3, 5]' join(char); // 数组元素以字符相连接,并返回字符串 sort([fn]); // 默认把元素看做字符串自然排序,也可传入函数自定义排序 var arr2 = [3, 5, 2, 9]; arr2.sort(function(n1, n2) { return n1 - n2; // 前者大于后者,升序排列 }); console.log(arr2); // 输出 '[2, 3, 5, 9]' 遍历 var arr = ['冰箱', '电视', '手机']; // 第1种遍历 for (var i=0; i monthDays) { d = monthDays; } return new Date(y, m-1, d, hour, minute, second); } /** * 扩展Date对象的功能 * 获取下一个月的日期 * @param date * @returns {Date} */ Date.prototype.getNextMonth = function(){ var year = date.getFullYear(); var month = date.getMonth()+1; var day = date.getDate(); var hour = date.getHours(); var minute = date.getMinutes(); var second = date.getSeconds(); var y = year; var m = parseInt(month) + 1; if (m == 13) { y = parseInt(y) + 1; m = 1; } var d = day; var monthDays = new Date(y, m, 0).getDate(); // 获取 m 月的天数 if (d > monthDays) { d = monthDays; } return new Date(y, m-1, d, hour, minute, second); } ```