一、基础数据类型
1.1 数组
数组增加长度的方法
// 修改数组长度var arrays = [1,2,3];arrays.length = 5;console.log(array)// 或者可以直接arrays[5] = x;// 此时 直接扩容会导致中间的直接为空
数组筛选
var arr = [1,2,34,56,78,23,12,12]var k = []for (let i = 0; i < arr.length; i++) {if (arr[i] > 12) {k[k.length] = arr[i];}}alert(k)
冒泡排序
var arr = [1,4,2,45,78,89];for (let i = 0; i < arr.length; i++) {for (let j = 0; j < arr.length-1; j++) {if (arr[j]>arr[j+1]){let tmp = arr[j];arr[j] = arr[j+1];arr[j+1] = tmp;}}}alert(arr);
1.2 函数
arguments
<script>function f() {console.log(arguments)}f(1,2,3)// arguments/*伪数组:具有length属性按照索引储蓄没有数组的方法*/</script>
声明方式
// 方式一直接声明function f() {alert()}// 方式二变量式var fun = function () {alert()}// 方式三函数式写法【只有一个形参】var ff = funs=>{alert(funs)}ff("???")
1.3 作用域


1.4预加载

二、对象
2.1 创建对象
创建对象
// 创建方式一var obj = {name:"小王",age:18,say:function (){alert("Say")}};// 调用alert(obj.name);alert(obj["name"])obj.say()// 创建方式二let object = new Object();object.name="zhangsan";object.age = 18;object.fun=function (){alert("say")}
构造函数创建对象
function Star(name,age,sex) {this.name = name;this.age = age;this.sex = sex;this.sing = function (sings) {alert(sings);}}let star = new Star("zhangsan",18,"男");star.sing("好运来");
2.2 遍历对象
function Star(name,age,sex) {this.name = name;this.age = age;this.sex = sex;this.sing = function (sings) {alert(sings);}}let star = new Star("zhangsan",18,"男");//star.sing("好运来");for (let starKey in star) {// 获得属性值 starKey 就是Key属性console.log(star[starKey])}
2.3 内置对象
学会查询文档
https://developer.mozilla.org/zh-CN/docs/MDN/Contribute/Getting_started
1) Math
https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Global_Objects/Math
// 圆周率console.log(Math.PI)console.log(Math.max(-1,1,2,3))console.log(Math.min(-1,1,2,3))
2) Date
https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Global_Objects/Date
// 当前时间let date = new Date();console.log(date)// 自定义时间 数字型会大一个月let zdy = new Date(2021,9,19);console.log(zdy)// 建议let day = new Date('2019-1-1 8:30:29');console.log(day)// 格式化let day = new Date('2019-1-1 8:30:29');console.log(day.getFullYear())console.log(day.getMonth()+1);// 要加1 不然不准

// 1970年距今毫秒数let date = new Date();let time = date.getTime();var valueOf = date.valueOf();console.log(time);console.log(valueOf);// 最常用的console.log(+new Date());console.log(Date.now());
3) Array
https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Global_Objects/Array
// 创建长度为2 的数组let array = new Array(2);// 表示数组元素有 2 3let array2 = new Array(2,3);// 检测是否数组if (array2 instanceof Array) {alert("?")}console.log(Array.isArray(array));// 末尾添加 返回值为当前数组长度let number = array.push(1,"Hello","hh");console.log(number);// 开头添加 返回值同上array.unshift(1,34,56);// 删除最后一个array.pop();// 删除开头array.shift();// 返回值都为被删除的// 反转array.reverse();// 数组排序// let sort = array.sort();array.sort(function (a,b) {return a-b;})console.log(array)var arr = [1,2,3,4,1];// 返回第一个索引 不存在 -1console.log(arr.indexOf(1));// 返回最后一个的索引console.log(arr.lastIndexOf(1));// 转换字符串console.log(arr.toString());// 分隔符转换console.log(arr.join(','));
