<html>

<head>
<title>Object</title>
</head>
<body> <script type="text/javascript">
//6大基本类型:undefined,null, string,boolean,number,对象类型(js内置的对象如Number、数组,宿主环境如浏览器中的window对象document对象,自己创建的)
//自己创建的对象,第一种,var形式创建对象:
var p = {
name:"cj",//属性的名字是name,对象中属性的名字可以不加引号,逗号分割,
work:function () { //方法
console.log("working...");
},
_age:18, //下划线表示私有
get age(){//不是方法的定义,没有冒号
return this._age;
},
set age(val){//形参没有类型
if(val <0 || val >150){
throw new Error("invalid value");
}else{
this._age = val;
}
},
address:{
home:"jiating",
office:"office" } };
console.log(p.name);
console.log(p._age);
console.log(p['age']);//属性可以用点访问,也可以用中括号访问
console.log(p.address.home);
var r = p && p.address && p.address.home //前面p和p.address都不为空才执行最后面
console.log(r);//jiating //get,set writable ,enuerable,configurable,value
//第二种,通过object函数创建对象,
var o = new Object();
o.name = 'ss';
o["abc"] = "abc"; //第三种:defineProperties,definePropertie Object.defineProperties(p,{//给p对象加属性
salary:{
value:1000,
writable:false
},
gender:{
value:true
},
height:{
get:function(){
return 180
},
set:function(val){
console.log(val);
}
}
});
console.log(p.salary);//
console.log(p.gender);//true
console.log(p.height);//
p.height = 324;
</script>
</body> </html>
for(sx in p){//遍历对象的所有属性
console(sx);
console(p.sx);
} console("name" in p);//name属性是否在p中,true
console(p.hasOwnProperty("name"));//p是否有name属性
delete p.name;//删除p的name属性,有些属性是删除不了的,如tostring() //writeable:属性是否可写
//enuerable:属性在遍历的时候是否出现
//configurable:属性是否可以删除,是否可以改变他的可写等特性
Object.getOwnPropertyDescriptor(p,"address");//得到p对象的address属性的特性

最新文章

  1. ASP.NET MVC 网站开发总结(五)——Ajax异步提交表单之检查验证码
  2. 微信公众平台SDK
  3. HDU 3374 String Problem (KMP+最大最小表示)
  4. UIView用户事件响应
  5. Oracle 11g RAC OCR 与 db_unique_name 配置关系 说明
  6. asp脱离源代码管理
  7. javamelody 使用
  8. HDU 1495 非常可乐(数论,BFS)
  9. SQL 如何在自增列插入指定数据
  10. springcloud Zuul学习笔记
  11. cocos2d-x学习记录5——CCTransition场景过渡
  12. tp5+layui 实现上传大文件
  13. javascript unicode与GBK2312(中文)编码转换示例
  14. HashMap(JDK1.9)详解
  15. C++多线程环境下注意共享资源的释放顺序
  16. Postgresql 9.6 搭建 异步流复制 和 同步流复制 详细教程
  17. ACCESS与MSSQL比较:SQL语句关于时间格式使用的注意点
  18. xlwings: Write Excel macro using python instead of VBA
  19. Java异常处理介绍(Java知识的重点内容)
  20. java map转json servlet response

热门文章

  1. jqueryValidator自定义校验规则的一种方式(覆盖源码)
  2. CentOS7下安装二进制MYSQL8
  3. 共用体 union
  4. python BeautifulSoup 获取页面多个子节点中的各个节点的内容
  5. python3之对本地TXT文件进行增加,删除,修改,查看功能。
  6. clear---清除当前屏幕
  7. vue滚动行为
  8. C#调用C/C++动态库,封装各种复杂结构体
  9. 【Codeforces Round #422 (Div. 2) A】I'm bored with life
  10. ECNUOJ 2150 完美的拯救