let triangle={
a:1,
b:2,
c:3
}
function coloTriangle(){
this.color='red';
}
coloTriangle.prototype=triangle;
let color=new coloTriangle();
Object.defineProperty(color,'auto',{
value:'auto'
})
let symbolProp=Symbol('symbol');
color[symbolProp]='symbol'
/**
* Reflect.ownKeys:Object.getOwnPropertyNames(target).concat(Object.getOwnPropertySymbols)
* 没有来自继承的,都是own
* 不管枚举不枚举都能遍历
* 还可以拿到symbol类型属性
*/
Reflect.ownKeys(color) //["color","auto",Symbol(symbol)]
/**
* Object.getOwnPropertyNames
* 没有来自继承,都是own
* 不管枚举不枚举都能遍历
* 拿不到symbol类型属性
*/
Object.getOwnPropertyNames(color);//["color","auto"]
/**
* Object.getOwnPropertySymbols
* 只能own
* 也不管枚举不枚举
* 只能拿到Symbol类型属性
*/
Object.getOwnPropertySymbols(color);//[Symbol(symbol)]
/**
* Object.keys就有点矫情了
* 只能是own
* and 要枚举才行
* 拿不到Symbol类型属性
*
*/
Object.keys(color);//["color"]
/**
* for in 就是也是取其一把
* 不需要own,可以来自继承属性
* 但是一定会要枚举
* 拿不到Symbol类型属性
*/
for(let i in color){
console.log(i);//color a b c
}
 
 
 
 
哈哈哈 还有什么的话欢迎补充

获取Object对象属性的方法,Reflect.ownKeys, Object.getOwnPropertyNames,Object.getOwnPropertySymbols,Object.keys,for in的更多相关文章

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

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

  2. 转: JavaScript 获取对象属性和方法

    一.获取对象属性和方法 Object.keys()for in 返回对象的可枚举属性和方法的名称数组. Object.getOwnPropertyNames() 返回的数组的所有属性(可枚举或不可枚举 ...

  3. JavaScript 获取对象属性和方法

    ShineJaie 原创整理,转载请注明出处. 一.获取对象属性和方法 Object.keys() 返回对象的可枚举属性和方法的名称数组. Object.getOwnPropertyNames() 返 ...

  4. ES6之6种遍历对象属性的方法

    ES6之6种遍历对象属性的方法 for ... in 循环遍历对象自身的和继承的可枚举属性(不含Symbol属性). Obejct.keys(obj),返回一个数组,包括对象自身的(不含继承的)所有可 ...

  5. Java反射学习-1 - 反射获取类的属性,方法,构造器

    新建一个Person类 package cn.tx.reflect; /** * 注解初步了解 * @author Administrator * */ public class Person { p ...

  6. Js基础知识7-JavaScript所有内置对象属性和方法汇总

    对象什么的,程序员可是有很多呢... JS三大对象 对象,是任何一个开发者都无法绕开和逃避的话题,她似乎有些深不可测,但如此伟大和巧妙的存在,一定值得你去摸索.发现.征服. 我们都知道,JavaScr ...

  7. JavaScript设置获取和设置属性的方法

    这篇文章主要介绍了JavaScript设置获取和设置属性的方法,学会使用getAttribute.setAttribute的用法,需要的朋友可以参考下   getAttribute 该方法用来获取元素 ...

  8. getSelection、range 对象属性,方法理解,解释

    网上转了一圈发现没有selection方面的解释,自己捣鼓下 以这段文字为例子.. <p><b>法国国营铁路公司(SNCF)20日承认,</b>新订购的2000列火 ...

  9. Javascript对象属性与方法汇总

    Javascript对象属性与方法汇总 发布时间:2015-03-06 编辑:www.jquerycn.cn 详细介绍下,javascript对象属性与对象方法的相关知识,包括javascript字符 ...

随机推荐

  1. windows自动化测试环境搭建文档

    步骤如下: 1.搭建安卓环境,需要设置系统变量“ANDROID_HOME”. 2.安装Node.js http://www.nodejs.org/download/ 下载相关操作系统的版本 3.安装A ...

  2. 201777010217-金云馨《面向对象程序设计Java》第四周总结学习

    2019面向对象程序设计(Java)第4周学习指导及要求 项目 内容 这个作业属于哪个课程 <任课教师博客主页链接>https://www.cnblogs.com/nwnu-daizh/ ...

  3. COOKIE&SESSION 入门

    JSP.EL 表达式的入门(重点) Servlet/JSP 是两种动态的 WEB 资源的两种技术. ** Servlet 的缺点 ** 开发人员要十分熟悉 JAVA 不便于页面调试和维护 修改.重新编 ...

  4. mysql版本引起的驱动问题

    mysql版本引起的驱动问题 com.mysql.jdbc.Driver 是 mysql-connector-java 5中的, com.mysql.cj.jdbc.Driver 是 mysql-co ...

  5. python json解析字符串出错该如何排查问题

    每天写一点,总有一天我这条咸鱼能变得更咸 python中对于字符串转json格式有专门的json库可以操作 #!/usr/bin/env python # -*- coding: utf-8 -*- ...

  6. djang项目中的疑问及解决办法(ValueError: Invalid model reference 'apps.user.User'. String model references must be of the form 'app_label.ModelName'.)

    这个问题其实就是apps.user.User这种用法是不对的,就在下面的模型中,我本来是绑定apps.user.User,但是试了一下,由于order和user是在同一个apps中,所以直接用user ...

  7. Ubuntu16.04安装deb包

    在Ubuntu下安装deb包需要使用dpkg命令.Dpkg 的普通用法: 1.sudo dpkg -i <package.deb> 安装一个 Debian 软件包,如你手动下载的文件. 2 ...

  8. oracle中having与where的区别

    1.where 不能放在group by 的后面 2.HAVING 是跟GROUP BY 连在一起用的,放在GROUP BY 后面,此时的作用相当于WHERE 3.WHERE 后面的条件中不能有聚集函 ...

  9. Oracle EBS 11i下载的软件如何制作成linux使用的iso文件

    1.cd \soft\ebs11i 2.unzip Bxxxxx.zip Disk1 3.mkisofs -o zj.iso -R -v Disk1 mkisofs -o zj.iso -R -v D ...

  10. 关于c# 中读取系统内存大小的问题。

    在程序中,调用WMI的时候,出现一个问题,就是我系统有插了两条内存条,共4G.然而自己只能在程序中查到安装内存为2G,感觉有点不淡定.这是之前的代码. static ManagementObjectS ...