-
插入删除数组元素
//仅能从尾部插入删除 arr.push(0);//push,写入,即在数组中最末位插入括号中元素,数字不带引号,字符带引号 arr.pop();//pop,删除,即将数组中最末尾元素删除,括号中不需填写数值,pop只能一位一位删除
//仅能从头部插入删除 arr.shift(1);//从头部插入,类似于push arr.unshift();//从头部删除,类似于pop
-
排序
arr.sort();//sort函数作用即排序,括号内不用输入值
-
元素反转
arr.reverse();//将数组中的所有元素按照当前顺序的逆顺序排列
-
链接字符串
arr.concat(arr1);//括号内,若是数组变量则直接填变量名,若是散列的元素,则加中括号;注:concat没有修改数组,仅返回一个新数组
-
连接符
arr.join('-');//括号内填想用什么连接起来,仅仅是一个样式,输出如下: arr.join('-') '0-7-5-2-3-1-6-4-9'//注:括号内必须加引号
-
多维数组
arr = [[x,x,···],[x,x,···],[x,x,···]];//多维数组即数组的嵌套 console.log(arr[1][1]);//取值时使用多维数组的下标取得
5、对象
-
若干个键值对
'use strict'; let person = { name:"zhangsan", age:3, email:"1234567@qq.com", score:0 }//定义一个对象,其内容“name”、“age”等为该对象的属性,属性的类型是字符串类型
-
对象赋值
person.name = "lisi";//对象中元素的赋值 person.age;//输出该对象的对应属性的值
-
若使用一个不存在的对象不会报错,会输出“undefined”
-
动态删除属性
delete person.name;//无论存不存在会返回一个true,再输出被删除属性时会输出undefined
-
动态添加属性
person.sex = "man";//直接暴力添加即可
-
判断属性值是否在这个对象中
'score' in person;//格式即xxx属性 in xxx对象 true 'toString' in person;//继承时,父类的属性也可以在该对象中查到 true
-
判断一个属性是否是该对象本身拥有的
person.hasOwnProperty('age');
6、流程控制
-
if判断
- if、else if、else
-
循环
-
while(注意避免死循环)、do{}while、for
-
for Each
arr.forEach(function(value)){ 执行代码; }
-
for in
for(索引 in 对象) { 执行代码; }
-
7、MAP和SET
-
MAP,类似于python中的字典,有key值,有value,具体实现方法是通过二维数组来实现的
let map = new Map([["李三",60],["赵四",80],["lulu",100]]);//map的定义 let score1 = map.get('李三');//通过key值获得value/ console.log(score1); map.set([["Tom",90]]);//往Map中加入元素 map.delete('李三');//在map中删除元素,括号内键入key值 //map的iterator遍历 let it = map[Symbol.iterator](); it.next(); it.next();//每次输出map中的一个元素 ...
-
SET,无序不重复的集合,特性即去重
let set = new Set([3,1,1,1,1]);//set的定义,输出结果为:set(2)(3,1),相同的元素被隐藏 set.add(2);//加入元素2,输出结果为:set(3)(3,1,2),插入相同元素不变 set.delete(1);//删除元素1,输出结果为:set(2)(3,2) set.has(3);//判断元素3是否在set中 //set的iterator遍历 let it = set[Symbol.iterator](); it.next(); it.next();//每次输出set中的一个元素 ...