<script>
// let a = { name:'ace'};
// let b = a;
// b.name = 'aec'
// b= { name:'aec'}
// console.log(a,b);
let arr = [
{
name: 'a',
age: 20
},
{
name: 'b',
age: 30
},
{
name: 'c',
age: 40
}
]
//遍历
arr.forEach(item => { item.gander = '男' })
console.log(arr);
//通过旧数组映射新数组
console.log(arr.map(item => "姓名:" + item.name));
console.log(arr.map(item => "年龄:" + item.age));
//过滤筛选
console.log(arr.filter(item => item.age >= 30));
//是否存在
console.log(arr.some(item => item.age === 20));
//是否全部都是
console.log(arr.every(item => item.gander === '男'));
//统计操作
console.log(arr.reduce((total, current) => total + current.age, 0));
console.log(Math.round(Math.random())?'男':'女');
let obj = {
length:3
}
var arr1 = Array.from(obj)
console.log(arr1);
var arr2 = Array.from({
length:3
}).map((item,index)=>({
id:index+1,
name:'用户'+index,
age:Math.floor(Math.random*50),
gander:Math.round(Math.random())?'男':'女'
}))
console.log(arr2);
let aaa = "bbb"
let age = 20
let obj1 = {
aaa,//aaa:aaa
age//age:age
}
console.log(obj1);
let obj2 = {
a:10,
b:20
}
//解构,从对象中取同名属性的值
let{a,b} = obj2
console.log(a,b);// console.log(obj2.a,obj2.b)
let arr3 = [1,2,3,4]
let [,d,e] = arr3
console.log(d,e);// console.log(arr3[1],arr3[2])
//展开运算符:...
let aa = {
name:"bb",
age:20
}
let bb = {
...aa,// name:aa.name,age:aa.age
gander:'男'
}
console.log(bb);
console.log(...[1,2,3]);
function test(...arr4) {
console.log(arr4.reduce((a,b)=>a+b));
}
test(1,2,3,4,5)
function cc(age=20) {//(age=20):默认值,没有传参就用默认值
console.log(age);
}
cc()
cc(30)
</script>