ES6:07-Symbol JavaScript第七种数据类型

ES6:07-Symbol JavaScript第七种数据类型

// 创建Symbol
let s = Symbol();
console.log(s, typeof s);
let s2 = Symbol(‘尚硅谷’);
console.log(s2);
let s3 = Symbol(‘尚硅谷’);
console.log(s2 === s3);
// Symbol.for创建
let s4 = Symbol.for(‘尚硅谷’);
let s5 = Symbol.for(‘尚硅谷’);
console.log(s4, typeof s4);
console.log(s4 === s5);
// 不能与其他数据进行运算 比较也不行 字符串拼接也不行
// let result=s +100;
// let result=s > 100;
// let result=s +‘100’;
//4种基本数据类型 :Undefined 、null、number、string、boolean
//复杂数据类型:object
//应用:
// 向对象添加方法 up down
let game={…}
// 声明一个对象
let methods={
up:Symbol()
,down:Symbol()
};
game[methods.up]=function(){
console.log(“我可以改变形状”);
}
game[methods.down]=function(){
console.log(“我可以快速下降”);
}
console.log(game);
//例2应用
let youxi = {
name: ‘狼人杀’,
[Symbol(‘say’)]: function () {
console.log(“我可以发言”);
},
[Symbol(‘zibao’)]: function () {
console.log(“我可以自爆”);
}
}
console.log(youxi);
//例3:
//检测类型
class Person{
static Symbol.hasInstance{
console.log(params);
console.log(“我被用来检测类型了”);
return false;
}
}
//传统型
// let o ={};
// console.log(o instanceof Person);
// 检测唯一性
const arr=[1,2,3];
const arr2=[4,5,6];
// 理解这个应该是用了唯一的id
arr2[Symbol.isConcatSpreadable]=false;
console.log(arr.concat(arr2));

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值