元编程 (你不知道的JS下卷第七章)

119 阅读1分钟

元属性

元属性以属性访问的形式提供特殊的其他方法无法获取的元信息。

Symbol.iterator 

Symbol.toStringTag 与 Symbol.hasInstance 

Symbol.species

Symbol.toPrimitive

Symbol.isConcatSpreadable

var a = [1,2,3],
         b = [4,5,6];
     b[Symbol.isConcatSpreadable] = false

     [].concat( a, b ); // [1,2,3,[4,5,6]] 

Symbol.unscopables

 var o = { a:1, b:2, c:3 },
         a = 10, b = 20, c = 30;
     o[Symbol.unscopables] = {
         a: false,b: true,c: false }; 
with (o) {
    console.log( a, b, c );// 1 20 3
}