Symbol配合模块化机制和类机制的使用例子

注意:
由于模块化机制涉及到模块化语法,这是es6的一种语法,兼容性较差,因此需要转码,转成es5,
所以需要新建一个项目,在当前项目下安装babel,步骤为:1.初始化:npm init -y
2.安装babel:cnpm install babel-cli --save-dev
3.安装预设:babel install babel-preset-es2015 --save-dev
4.创建.babelrc的文件,边写入内容{“presets”:[“es2015”]}
5.为简化后期频繁转码操作,可修改package.json文件,添加:“build”:“babel src --out-dir dist”
(src是转码前的文件夹,dist是转码后的文件夹),修改结果如下图:
Symbol配合模块化机制和类机制的使用例子

在src下vi app1.js,并将其导出
Symbol配合模块化机制和类机制的使用例子在src下vi app2.js将app1.js导入
Symbol配合模块化机制和类机制的使用例子之后执行npm run build,转码
执行dist/app2.js,即可

会发现:user2.name可以打印出来,但user2[pwd]
打印失败,报错信息为
Symbol配合模块化机制和类机制的使用例子就是因为pwd的属性名类型为Symbol,用Symbol作为属性名,为私有属性