。。。第一个重点:属性值的添加
./[]
var obj={}
obj.name="jialiting";//通过.来进行属性的添加,单引号和双引号都可以呢
obj['age']=20;
console.log(obj.name);
console.log(obj["age"]);
他们之间的区别
1,.取自身的一个属性
2[]可以是变量
//实例
var obj2={};
obj2.name="jialiting";
obj2.a="aaa";
var a="name";
console.log(obj2["a"]);//的结果aaa 变量和字符串的区别是否添加字符串
console.log(obj2[a]);//的结果是jialiting 中的a是一个变量 obj2["name"];
。。。第二个是属性的删除
与后端的交互的时候,有时候一些值不需要呢
var obj3={}
onj3.name="lili"
obj3.age=20;
obj3.state=false;
var age="age";
delete obj3.name;//也可以用[];删除属性 obj3["name"];
delete obj3["age"];
console.log(obj3);
delete obj3[age];
数组元素中的删除用push() splice() unshift()
。。。第三个重点是属性的检测
//属性的检测 判断对象中是否存在属性
//in 相当于对应的运算符
var obj4={
name:"jiali",//嵌套字面量必须用逗号
age:20,
};
console.log("name1" in obj4)//属性的名字 in 对象 false in可以获取继承的
//使用对象的方法 hasOwnproperty()
var obj5={
name:"jiali",
age:23
};
var a="name";
//obj5.hasOwnproperty("name"); true 获取不到继承
ob5.hasOwnProperty(a);a中是变量 变量可以分为全局变量和局部变量
。。。判断他是否是存在!=undefined值得判断
console.log(obj5.name!==undefined);//=的意思是赋值 true
if(a=="name"){//如果为真表示
}//表示匹配
===全等 全等的概念就是值和类型进行匹配0===“0”类型匹配 一个是数字 一个是字符串
!=它表示不等于 取反
!==
。。。第四个重点就是枚举属性
1.for in
var arr=["q","a","c"];
var o={name:"jiali",age:20}
for(a in o){//for(属性 in 对象)a的类型是一个字符串
console.log(a);}//的结果是name age
console.log(o[a]);//的结果是jiali 20中a是一个变量
console.log(o.a);//的结果是 undefined undefined 记住不能写上o.a
//数组
for(a in arr){
console.log(arr[a]);//q a c
console.log(a);//0 1 2}
for (var i=0; i<10;i++){}
forEach()没有返回值
map() 回调函数中,支持return返回值
0.1
var arr2=["a","b","c"]
arr2.forEach(function(item,index){
console.log(item)
//a b c
}
0.2
var arr3=["a","b","c"]
arr3.map(function(item,index){
return item;
}
。。。。第五个重要知识
序列化
JSON.parse()对象字符串转化为对象(深拷贝)
JSON.stringify()对象转化为字符串
var o={name:"jiaji",age:20}
console.log(typeof JSON.stringify(o))//的结果是string
console.log(typeof o);//的结果是object
2
var o={name:"jiali",age:30}
var o2=JSON.stringify(o);
console.log(type JSON.parse(o2));//object
。。。。深拷贝(双胞胎)和浅拷贝(引用和影子)的区别
数组 slice() concat()返回新的数组
var arr4=["a","b",“c",”d"];
//arr4.slice(1,2);//不包含最后一个["b"]
//arr4.slice(1,3);//["b","c"]
//arr4.slice(0)//["a","b","c","d"];
//var arrCopy=arr4.slice(0);
var arrCopy=arr4.concat(”x","y");//合并 ["a","b","c","d","x","y"]
arrCopy[2]="abc";
arrCopy;//["a","b","abc","d"];