var person = {
type: 'person',
say: function(){
console.log("Hellow World!")
}
}
//以person对象为原型,创建obj对象
var obj = Object.create(person, {
sex: {
writable: true,
configurable: true,
enumerable: false, //设置sex属性为不可枚举
value: 'male'
},
age: {
writable: true,
configurable: true,
enumerable: true, //设置sex属性为可枚举
value: 23
}
});
//为obj对象创建Symbol属性
var mySymbol = Symbol();
Object.defineProperty(obj, mySymbol, {
value: 'hello!'
}); obj.name = '张三'; //自定义属性name默认为可枚举
console.log(obj.propertyIsEnumerable('name')); //true, 成功验证name属性为可枚举 //用for…in…获取obj上全部可枚举的属性(包括自有和原型链上的)
var arr = [];
for(var key in obj){
arr.push(key);
}
console.log(arr); //["age", "type", "say"] //用Object.keys()获取obj上全部可枚举的自有属性
console.log(Object.keys(obj)); //["age", "name"] //用Object.getOwnPropertyNames()获取obj上所有的属性
console.log(Object.getOwnPropertyNames(obj)); //["sex", "age", "name"] //用Object.getOwnPropertySymbols(obj)获取obj上的Symbol属性
console.log(Object.getOwnPropertySymbols(obj));// [Symbol()] //用Reflect.ownKeys(obj)获取obj上所有属性,包括Symb属性
console.log(Reflect.ownKeys(obj)); // ["sex", "age", "name", Symbol()]

JS查看对象属性的方式的更多相关文章

  1. js访问对象属性的方式“.”与“[]”的区别

    . 和 [] 没多大区别,作用完全相同.但是 一般情况下建议使用 . 写法,这样比较接近其它语言的面向对象写法,易读 如果属性名是动态的(比如变量中),只能使用 [] 写法.如 var person= ...

  2. js 获取对象属性个数

    js 获取对象属性个数 方法一: var attributeCount = function(obj) { var count = 0; for(var i in obj) { if(obj.hasO ...

  3. js获取对象值的方式

    js获取对象值的方式 var obj = {abc:"ss",nn:90}; var v1 = obj.abc;//使用点的方式 var v2 = obj["abc&qu ...

  4. JS 自定义对象 属性

    js自定义对象 一,概述 在Java语言中,我们可以定义自己的类,并根据这些类创建对象来使用,在Javascript中,我们也可以定义自己的类,例如定义User类.Hashtable类等等. 目前在J ...

  5. js自定义对象.属性 笔记

    <一> js自定义对象 一,概述 在Java语言中,我们可以定义自己的类,并根据这些类创建对象来使用,在Javascript中,我们也可以定义自己的类,例如定义User类.Hashtabl ...

  6. js 中对象属性特性的描述

    如何自定义属性的特性? 用对象.属性的特性和自定义的属性的特性有什么区别? 它的四大特性 writable   enumerable   configable   有什么区别? 先预习一个用对象.属性 ...

  7. JS获取对象“属性和方法”的方法

    平时在写的代码过程中,经常会遇到对对象Object的数据处理.而在对对象的数据处理中,操作最频繁的是“数据引用”.“值的修改”.“获取关键字(属性)”.平时最烦的也是“获取关键字”,经常忘记怎么去获取 ...

  8. JS枚举对象属性的方法及其区别

    愉快的中秋节要过去了,国庆倒计时两个周!!! 闲话不多说,那今天我们来看一看JS中枚举对象属性的方法有哪些以及他们的区别 首先在JS里面枚举对象属性一共有三种方法 for in: 会遍历对象中所有的可 ...

  9. js object 对象 属性和方法的使用

    //object 对象 属性和方法的使用 var person = new Object(); person.name="张海"; person.age="; perso ...

随机推荐

  1. koa源码之delegate使用

    koa中context可以直接调用request和response属性的重要原因是使用了delegate将req和res的属性代理到context, Delegator.prototype.gette ...

  2. SWPU新闻后台登录页面

    最终效果图: <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <ti ...

  3. 关于oracle数据库中获取版本号类数据最大值的sql

    目前还在高度加班中,但是本次内容怕自己忘记,好不容易解决的,所以赶紧先随便抽点时间记录下,也没来得及考虑效率什么的优化问题,免得以后忘记了. 测试库结构如下: 表名为 testtab 字段名为test ...

  4. scikit_learn lasso详解

    Lasso 回归 l1 正则化 The Lasso 是估计稀疏系数的线性模型. 它在一些情况下是有用的,因为它倾向于使用具有较少参数值的情况,有效地减少给定解决方案所依赖变量的数量. 因此,Lasso ...

  5. 第八届蓝桥杯 4、方格分割 DFS

    标题:方格分割 6x6的方格,沿着格子的边线剪开成两部分. 要求这两部分的形状完全相同. 如图:p1.png, p2.png, p3.png 就是可行的分割法. 试计算: 包括这3种分法在内,一共有多 ...

  6. python 几分钟前,几小时前,几天前转为时间戳

    一开始我是这么做的 import time import datetime def conv_time(t): min = re.findall('\d+', t)[0] if u'分钟' in t: ...

  7. 华为S5700配置端口镜像和华三S5120配置802.1X认证记录

    一.说明 事情的起因是我们部门有个华为的S5700交换机,想配置端口镜像抓包但让助理买的串口线很久都还没到:而昨天测试部的同事说他们那有台华三的S5120想要配802.1X认证,但只有华为交换机的文档 ...

  8. 简单的压力测试工具 siege

    $ siege -c 1000 -r 100 -b http://127.0.0.1:13579/3344 HTTP/1.0 200 0.02 secs: 49 bytes ==> GET /3 ...

  9. java多线程之堵塞的应用

    线程在Running的过程中可能会遇到阻塞情况,上次的内容我们已经使用过sleep()的方法. 调用join()和sleep()方法,sleep()时间结束或被打断,join()中断,IO完成都会回到 ...

  10. python修炼第三天

    今天主要讲了文件操作,函数与装饰器,装饰器比较烧脑,需要多做练习,逐步分解来进行理解!    加油! 一 文件操作 操作系统 提供文件的概念可以操作磁盘. 文件的只读模式: 注意如果是windows ...