let person = new Object();
person.name = ‘xiaojichao’;
person.age = 49;
console.log(person.name);
// 对象字面量
let person1 = {};
let s = <div> <h1>dasda</h1> </div>
;
let a = ‘’;
person1.name = ‘xiaojichao’;
person1.age = 49;
let person2 = {
name: ‘xaojichao’,
age: 49,
};
console.log(person2.name);
console.log(typeof person2); // Object
// 数组
const oArray = new Array();
const oArray = [];
console.log(typeof oArray);
// 数组初始化
const heroes = [];
console.log(heroes[0]);
heroes[0] = ‘蝙蝠侠’;
heroes[1] = ‘神奇女侠’;
heroes[2] = ‘闪电侠’;
heroes[5] = ‘水行侠’;
console.log(heroes);
// 数组字面量
const avengers = [‘美国队长’, ‘钢铁侠’, ‘雷神’, ‘绿巨人’];
console.log(avengers);
delete avengers[0];
console.log(avengers);
let person2 = {
name: ‘xaojichao’,
age: 49,
};
const a = [0,undefined, ‘1231212’, null, person2];
console.log(a);
// 解构语法
const array1 = [1,2,3];
let a = array1[0];
let b = array1[1];
let c = array1[2];
const [a,b,c] = [1,2,3];
console.log(a=${a}, b=${b}, c=${c}
)
const [a,b] = [1,2,3];
console.log(a);
const avengers = [‘美国队长’, ‘钢铁侠’, ‘雷神’, ‘绿巨人’];
console.log(avengers.length);
avengers.length = 6;
console.log(avengers);
const avengers = [‘美国队长’, ‘钢铁侠’, ‘雷神’, ‘绿巨人’];
console.log(avengers.pop());
console.log(avengers);
avengers.push(‘蝙蝠侠’);
console.log(avengers);
const avengers = [‘美国队长’, ‘钢铁侠’, ‘雷神’, ‘绿巨人’]
console.log(avengers.shift())
console.log(avengers)
avengers.unshift(‘小超人’)
console.log(avengers)
const avengers = [‘美国队长’, ‘钢铁侠’, ‘雷神’, ‘绿巨人’];
const heroes = [‘蝙蝠侠’,‘神奇女侠’,‘闪电侠’, ‘水行侠’];
const oArray = avengers.concat(heroes);
console.log(avengers);
console.log(oArray);
const avengers = [‘美国队长’, ‘钢铁侠’, ‘雷神’, ‘绿巨人’];
const heroes = [‘蝙蝠侠’,‘神奇女侠’,‘闪电侠’, ‘水行侠’];
const oArray = […avengers,…heroes];
console.log(oArray)
const avengers = [‘美国队长’, ‘钢铁侠’, ‘雷神’, ‘绿巨人’];
const a = avengers.join(’&’);
console.log(a);
const avengers = [‘美国队长’, ‘钢铁侠’, ‘雷神’, ‘绿巨人’];
const b = avengers.slice(2,4);
console.log(b)
console.log(avengers)
const avengers = [‘美国队长’, ‘钢铁侠’, ‘雷神’, ‘绿巨人’];
const c = avengers.splice(2,2,‘xiaojichao’,2,3)
console.log©;
console.log(avengers);
const d = [‘a’,‘b’,‘c’,‘d’]
const e = d.reverse();
console.log(e,d);
const f = [1,2,10,1,2];
const g = f.sort();
console.log(g,f)
const avengers = [‘美国队长’, ‘钢铁侠’, ‘雷神’, ‘绿巨人’];
const a1 = avengers.indexOf(‘美国队长1’);
console.log(a1);
const avengers = [‘美国队长’, ‘钢铁侠’, ‘雷神’, ‘绿巨人’];
const a2 = avengers.includes(‘美国队长1’);
console.log(a2);
// 多维数组
const ma = [[1,2],[3,4]];
console.log(ma[0][0]);
const summer = [‘Jun’, ‘Jul’, ‘Aug’];
const winter = [‘Dec’, ‘Jan’, ‘Feb’];
const nested = [ summer, winter ];
console.log(nested);
const flat = […summer, …winter];
console.log(flat);
// set
const list = new Set();
list.add(1);
list.add(2).add(3).add(4).add(5);
list.add(5);
console.log(list);
const list = new Set([1,2,3,4,5])
console.log(list);
// 数组去重
const a = [1,2,12,1,2,3,4,5]
const b = new Set(a);
console.log(b);
const c = […b];
console.log©;
const c = new Set(‘Hello’);
console.log©
const list4 = new Set().add(‘the’).add(‘quick’).add(‘brown’).add(‘fox’);
console.log(list4);
const list4 = new Set().add(‘the’).add(‘quick’).add(‘brown’).add(‘fox’);
console.log(list4.size)
list4.size = 6;
console.log(list4)
const list4 = new Set().add(‘the’).add(‘quick’).add(‘brown’).add(‘fox’);
console.log(list4.has(‘brown’));
list4.delete(‘the’);
console.log(list4)
list4.clear();
console.log(list4);
const list4 = new Set().add(‘the’).add(‘quick’).add(‘brown’).add(‘fox’);
const oArray = […list4];
console.log(oArray)
const list4 = new Set().add(‘the’).add(‘quick’).add(‘brown’).add(‘fox’);
const oArray = Array.from(list4);
console.log(oArray);
// 内存泄漏
let array1 = [1, 2, 3];
let array2 = [3, 4, 5];
const strong = new Set().add(array1).add(array2);
console.log(strong.has(array1));
array1 = null; // 删除对原始对象的引用
array2 = null;
array3 = […strong][0];
array4 = […strong][1];
console.log(array3);
console.log(array4);
let array1 = [1, 2, 3];
let array2 = [3, 4, 5];
const weak = new WeakSet().add(array1).add(array2);
console.log(weak);
array1 = null;
array2 = null;
const array3 = […weak][0];
const array4 = […weak][1];
console.log(array3);
console.log(array4);
// map
const romanNumerals = new Map();
romanNumerals.set(1,‘I’);
romanNumerals.set(2,‘II’).set(3,‘III’).set(4,‘IV’).set(5,‘V’);
console.log(romanNumerals);
console.log(romanNumerals.size);
console.log(romanNumerals.get(3));
console.log(romanNumerals.has(5));
romanNumerals.delete(5);
console.log(romanNumerals);
romanNumerals.clear();
console.log(romanNumerals);
// map to array
const romanNumerals = new Map();
romanNumerals.set(1,‘I’).set(2,‘II’).set(3,‘III’).set(4,‘IV’).set(5,‘V’);
const oArray1 = […romanNumerals];
const oArray2 = Array.from(romanNumerals);
console.log(oArray1);
console.log(oArray2);
//review
/*
数据类型
基础类型:String、Number Boolean Symbol undefined null
引用类型:Object/Function
两种:
对象构造函数
let oStudent = new Object();
对象字面量
let oStudent = {
name: ‘xaaaa’,
age: 21
}
oStudent.name
Array
new Array()
[]
Set
let oSet = new Set();
oSet.add(1).add(2)
let oSet = new Set([1,2,3]);
*/
// 创建对象
// 1. 通过Object构造函数
let myObject = new Object();
myObject.name = ‘xiaojichao’;
myObject.age = 20;
console.log(myObject);
// 2. 通过对象字面量创建对象
const oStudent = {};
oStudent.name = ‘xiao’;
oStudent.age = 21;
const oStudent1 = {
name: ‘xiao’,
age: 21
};
console.log(oStudent1.name);
console.log(typeof oStudent1); // object
// array
const a1 = new Array();
const a2 = [];
console.log(typeof a2); // object
console.log(a2[0]);
const a2 = [];
a2[0] = ‘a’;
a2[1] = 2;
a2[5] = true;
console.log(typeof a2);
console.log(a2 instanceof Array);
console.log(a2[2]);
const a3 = [1,2,3,‘abc’,true,undefined,null,a2,oStudent];
const avengers = [‘美国队长’, ‘钢铁侠’, ‘雷神’, ‘绿巨人’];
delete avengers[2];
console.log(avengers);
const number1 = [1,2,3,4]
let a = number1[0];
let b = number1[1];
let c = number1[2];
let d = number1[3];
console.log(a=${a}, b=${b}, c=${c}
);
const [a,b,c,d] = [1,2,3,4];
console.log(a=${a}, b=${b}, c=${c}
);
const [a,b] = [‘xiaojichao’,true,1,2,2,1];
console.log(a=${a}, b=${b}
)
const avengers = [‘美国队长’, ‘钢铁侠’, ‘雷神’, ‘绿巨人’];
console.log(avengers.length);
avengers.length = 1;
console.log(avengers);
avengers.length = 0;
console.log(avengers);
const avengers = [‘美国队长’, ‘钢铁侠’, ‘雷神’, ‘绿巨人’];
avengers.pop();
console.log(avengers);
avengers.push(‘xiaojichao’);
console.log(avengers);
const avengers = [‘美国队长’, ‘钢铁侠’, ‘雷神’, ‘绿巨人’];
console.log(avengers.shift());
console.log(avengers);
const avengers = [‘美国队长’, ‘钢铁侠’, ‘雷神’, ‘绿巨人’];
avengers.unshift(“xiaojichao”);
console.log(avengers);
const avengers = [‘美国队长’, ‘钢铁侠’, ‘雷神’, ‘绿巨人’];
const heroes = [‘蝙蝠侠’,‘神奇女侠’,‘闪电侠’, ‘水行侠’];
const ah = avengers.concat(heroes);
console.log(avengers,heroes,ah);
const avengers = [‘美国队长’, ‘钢铁侠’, ‘雷神’, ‘绿巨人’];
const heroes = [‘蝙蝠侠’,‘神奇女侠’,‘闪电侠’, ‘水行侠’];
const ah = […avengers, …heroes];
console.log(ah);
const avengers = [‘美国队长’, ‘钢铁侠’, ‘雷神’, ‘绿巨人’];
const av1 = avengers.join();
const av2 = avengers.join(’ & ');
console.log(av1);
console.log(av2);
const avengers = [‘美国队长’, ‘钢铁侠’, ‘雷神’, ‘绿巨人’];
const av3 = avengers.slice(1, 3)
console.log(avengers)
console.log(av3)
const avengers = [‘美国队长’, ‘钢铁侠’, ‘雷神’, ‘绿巨人’];
const av4 = avengers.splice(1,2,‘xiao’,‘ji’,‘adsfa’);
console.log(av4);
console.log(avengers)
const number1 = [1,2,23,10,3,8,9];
const a = number1.sort();
console.log(number1);
console.log(a);
const str = [‘a’,‘b’,‘c’,‘1’]
str.reverse();
console.log(str);
const avengers = [‘美国队长’, ‘钢铁侠’, ‘雷神’, ‘绿巨人’];
const a = avengers.indexOf(‘美国队长’);
console.log(a);
const avengers = [‘美国队长’, ‘钢铁侠’, ‘雷神’, ‘绿巨人’];
const b = avengers.includes(“美国队长”)
console.log(b)
// 多维数组
const ma = [[1,2],[3,4]];
console.log(ma);
console.log(ma[0][0])
console.log(ma[0][1])
const summer = [‘Jun’, ‘Jul’, ‘Aug’];
const winter = [‘Dec’, ‘Jan’, ‘Feb’];
const nested = [ summer, winter ];
console.log(nested);
const flat = […summer,…winter];
console.log(flat);
// Set
const oSet = new Set();
oSet.add(1)
oSet.add(2)
oSet.add(3).add(4).add(5)
oSet.add(5)
console.log(oSet);
const list1 = new Set([1,2,3,4,5,6])
console.log(list1);
const list2 = new Set(‘Hello’);
console.log(list2);
const list4 = new Set().add(‘the’).add(‘quick’).add(‘brown’).add(‘fox’);
console.log(list4.size)
list4.size = 2
console.log(list4)
const list5 = new Set().add(‘the’).add(‘quick’).add(‘brown’).add(‘fox’);
a = list5.has(‘brown’)
console.log(a)
const list5 = new Set().add(‘the’).add(‘quick’).add(‘brown’).add(‘fox’);
const b = list5.delete(‘fox’);
console.log(b)
console.log(list5)
list5.clear();
console.log(list5);
const list6 = new Set().add(‘the’).add(‘quick’).add(‘brown’).add(‘fox’);
const a = Array.from(list6);
console.log(a);
const list6 = new Set().add(‘the’).add(‘quick’).add(‘brown’).add(‘fox’);
const a = […list6];
console.log(a);
const oArray1 = [1,2,12,1,2,3,4,4,4,5]
const oSet1 = new Set(oArray1);
console.log(oSet1);
const oArray2 = […oSet1];
console.log(oArray2);
// weakset
let student = {
name: ‘xiao’,
age: 10
};
const strong = new Set();
strong.add(student);
student = null;
console.log(strong.has(student));
console.log([…strong][0]);
let student = {
name: ‘xiao’,
age: 10
};
const weak = new WeakSet();
weak.add(student);
//student = null
console.log(weak.has(student));
// Map
const oMap = new Map()
oMap.set(1, “I”)
oMap.set(2,‘II’).set(‘b’,“III”).set(4,“IV”).set(‘a’,“V”)
console.log(oMap)
console.log(oMap.size)
const a = oMap.get(5)
console.log(a)
oMap.set(‘name’,‘xiaojichao’)
const b = oMap.get(‘name’)
console.log(oMap)
console.log(b)
console.log(oMap.has(‘name’))
const c = oMap.delete(‘name’)
console.log©
oMap.clear()
console.log(oMap)
const oMap = new Map().set(1, “I”).set(2,‘II’).set(‘b’,“III”).set(4,“IV”).set(‘a’,“V”)
const oArray = […oMap];
console.log(oArray);
const oMap = new Map().set(1, “I”).set(2,‘II’).set(‘b’,“III”).set(4,“IV”).set(‘a’,“V”)
const oArray = Array.from(oMap)
console.log(oArray);
const student = {
name: ‘xiao’,
age: 21
};
student.name = ‘xiao’
student.age = 21
student = null;