JavaScriptはオブジェクトの属性と方法を取得します.
11821 ワード
一、オブジェクトの属性と方法を取得する
Object.keys() オブジェクトの列挙可能な属性とメソッドの名前配列を返します.
Object.keys() オブジェクトの列挙可能な属性とメソッドの名前配列を返します.
Object.getOwnPropertyNames()
によって返された配列のすべての属性(エニュメレーションまたはエニュメレーションできない)は、与えられたオブジェクトを直接見つける. 1 //
2 function myObj(name, attr) {
3 this.name = name;
4 this.attr = attr;
5
6 this.sayHi = function () {
7 return 'hi everyone!!!';
8 }
9 }
10
11 //
12 var myTester = new myObj("shinejaie", 1)
13 // ( )
14 var arr = Object.keys(myTester);
15 console.log('arr', arr); // arr ["name", "attr", "sayHi"]
16
17 // ( ) 。
18 console.log("attr", Object.getOwnPropertyNames(myTester)); // attr ["name", "attr", "sayHi"]
19
20 // Object
21 Object.prototype.newShine = "it's me";
22
23 //
24 for (var i in myTester) {
25 console.log(i);
26 }
27 // name,attr,sayHi,newShine
28
29 //
30 for (var i in myTester) {
31 if (myTester.hasOwnProperty(i)) {
32 console.log(i);
33 }
34 }
35 // name,attr,sayHi
二、Object.keys()、Object.getOwnPropertyNames()、for...in...
1 //
2 var nonenum = Object.create({}, {
3 getFoo: {
4 value: function () {
5 return this.foo;
6 },
7 enumerable: false
8 }
9 });
10 nonenum.foo = 1;
11 nonenum.asj = 2;
12
13 //
14 console.log(Object.getOwnPropertyNames(nonenum).sort()); // ["asj", "foo", "getFoo"]
15
16 //
17 console.log(Object.keys(nonenum).sort()); // ["asj", "foo"]
18
19 //
20 for (var i in nonenum) {
21 if (nonenum.hasOwnProperty(i)) {
22 console.log(i); // foo asj
23 }
24 }
三、JavaScriptオブジェクト属性名と方法名をそれぞれ取得する. 1 //
2 function myObj(name, attr) {
3 this.name = name;
4 this.attr = attr;
5
6 this.sayHi = function () {
7 return 'hi everyone!!!';
8 }
9 }
10
11 //
12 var myTester = new myObj("shinejaie", 1)
13
14 //
15 for (var i in myTester) {
16 if (myTester.hasOwnProperty(i) && typeof myTester[i] == "function") {
17 console.log(" : ", i, "=", myTester[i])
18 }
19 }
20 // : sayHi = () { return 'hi everyone!!!'; }
21
22 //
23 for (var i in myTester) {
24 if (myTester.hasOwnProperty(i) && typeof myTester[i] != "function") {
25 console.log(" : ", i);
26 }
27 }
28 // : name : attr