Object.keys()的应用

在项目中突然用到这块了,就把这块的知识整理了下来,以方便后期的学习和使用
在开发中,有时候我们需要知道对象的所有属性,原生js给我们提供了一个很好的方法:Object.keys(),使用该方法将会返回一个数组。
1.当传入对象时,返回的是属性名,如:

var obj = {'a':'1','b':'2','c':'3'};
console.log(Object.keys(obj));  //['a','b','c']

2.当传入字符串或数组时将会返回索引,如:

//字符串时
var str = 'abcdef';
console.log(Object.keys(obj));  //[0,1,2,3,4,5]
//数组时
 var arr = ["a", "b", "c"]; 
 console.log(Object.keys(arr)); // console: ["0", "1", "2"]

3.当为构造函数时,会返回空数组或者属性名,如:

function man(name, age, gender) {
            this.name = name;
            this.age = age;
            this.gender = gender;
            this.toCome = function () {
                    return (this.name + ", " + this.age + ", " + this.gender);
            }
    }

    console.log(Object.keys(man)); //console: []

//或

var spaghetti = new man("Tom", 20, "male");
    console.log(Object.keys(spaghetti)); //console: ["name", "age", "gender", "toCome"]

走别人不曾走过的路,才能看到别人不曾看到的风景。

原文地址:https://www.cnblogs.com/axingya/p/13803559.html