转自:微点阅读 https://www.weidianyuedu.com
属性的删除
属性的检测
枚举属性
序列化对象
//属性的设置和获取 ./[] (区别: .是取自身的属性,[]可以是变量)var obj = {} obj.name = "Tina" obj["age"] = "26" //打印 console.log(obj.name) //Tina console.log(obj["name"]) //Tina console.log(obj.age) //26 console.log(obj["age"])//26 // 访问一个变量 var nameA = "name" console.log(obj[nameA]) //相当于 console.log(obj["name"]), 打印出 Tina
1、属性的删除
// 属性的删除 var o= {} o.name = "Tina" o["age"] = "26" //写法1 delete o.name console.log(o.name) //underfined //写法2 delete o["name"] console.log(o["name"]) //underfined
2、属性的检测
//属性的检测 var o = {} o.name = "Tina" o.age = "underfined" //方法1 in运算符 console.log("name" in o) // true //方法2 hasOwnProperty() console.log(o.hasOwnProperty("name")) //true //方法3 != underfined 对值进行比较(不推荐使用,比如age) console.log(o.name != "underfined") //true /* 补充 = 赋值 == 匹配判断 === 匹配判断,对类型进行判断*/
3、枚举属性(for in多用于对象,for &each多用于数组)
// for in//对象var o = {x:1,y:2,z:3}for(a in o){console.log(a)} // 打印出key: x y zfor(a in o){console.log(o[a])} //打印出value: 1 2 3//数组var arr = [{x:1},{y:2},{z:3}]for(a in arr){console.log(a)} // 打印出索引: 0 1 2for(a in arr){console.log(arr[a])} //打印出对象key: value//同步for(var i = 0; i<10; i ) { console.log(i) //打印出索引0~9}//异步var data = msg; //假设已取到后台返回的值$.each(data, function(indedx, item) { alert(data)})alert(data)//如果此alert先出现就改用for})
4、序列化对象
//序列化对象var o = {x:1,y:2,z:3}var str = JSON.stringify(o) //转换为字符串{"x":1,"y":2,"z":3}console.log(typeof(str)) //stringvar obj = JSON.parse(str)) //{x: 1, y: 2, z: 3}console.log(typeof(obj)) //object//深拷贝(双胞胎)浅拷贝(影子)JSON.parse();//深拷贝/*浅拷贝*/var o2 = {x:1,y:2,z:3}var p = o2o2.x = "111"console.log(p) // {x:111,y:2,z:3}/*---------------*/function getFormData() { var _name = "Tina" var _age = "26" var data = { "name":_name, "age":_age } return data}//提交$(".btn-submit").on("click",function () { var data = getFormData() console.log(JSON.stringify(data)) //{"name":"Tina","age":"26"} $.ajax({ type: "POST", url: url, cache: false, data: {dataJson:JSON.stringify(data)}, //传参 dataType: "json", //返回值类型 success:function(msg){ // }, error:function(){ // } })})