当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Javascript Object.getOwnPropertyNames()用法及代码示例


JavaScript中的Object.getOwnPropertyNames()方法是标准的内置对象,该对象返回给定对象中存在的所有属性。

用法:

Object.getOwnPropertyNames(obj)

参数:此方法接受上述和以下描述的单个参数:



  • obj:此参数保存要返回其可枚举和不可枚举属性的对象。

返回值:此方法返回一个字符串数组,该字符串数组对应于直接在给定对象中找到的属性。

以下示例说明了JavaScript中的Object.getOwnPropertyNames()方法:

范例1:

const gfg = { 
  val1:"Geek1", 
  val2:"Geek2", 
  val3:"Geek3", 
  val4:"Geek4"
}; 
console.log(Object.getOwnPropertyNames(gfg)); 
  
var gfg2 = { val1:'Geek1', val2:'Geek2', val3:'Geek3' };   
console.log(Object.getOwnPropertyNames(gfg2).sort());  
    
Object.getOwnPropertyNames(gfg2). 
        forEach(function(val, idx, array) {   
  console.log(val + ' -> ' + gfg2[val]);   
    
}); 

输出:

Array ["val1", "val2", "val3", "val4"]
Array ["val1", "val2", "val3"]
"val1 -> Geek1"
"val2 -> Geek2"
"val3 -> Geek3"

范例2:

function ParentClass() {} 
ParentClass.prototype.inheritedMethod = function() {}; 
  
function ChildClass() { 
  this.prop = 5; 
  this.method = function() {}; 
} 
ChildClass.prototype = new ParentClass; 
ChildClass.prototype.prototypeMethod = function() {}; 
  
console.log( 
  Object.getOwnPropertyNames( 
    new ChildClass() 
  ) 
); 
  
var my_obj = Object.create({}, { 
  getFoo:{ 
    value:function() { return this.foo; }, 
    enumerable:false
  } 
}); 
my_obj.foo = 1; 
  
console.log(Object.getOwnPropertyNames(my_obj).sort());

输出:

Array ["prop", "method"]
Array ["foo", "getFoo"]

支持的浏览器:下面列出了Object.getOwnPropertyNames()方法支持的浏览器:

  • 谷歌浏览器
  • Firefox
  • IE
  • Opera
  • Safari
  • Edge



相关用法


注:本文由纯净天空筛选整理自SHUBHAMSINGH10大神的英文原创作品 JavaScript | Object.getOwnPropertyNames() Method。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。