javascript 基础知识- 字面量/内置对象
记一个前端基础知识应用过程:
自用版
老规矩 po官网:
字面量
下面是代码:
# vue
...data() {return {// 字面量formData: {otherParameter: [{paramName: "",paramValue: "",},],},// 字面量// 特殊参数 提交后端前拼接到otherParameterspecialParameter: {iamsuperwoman: "true"},
...
提交前处理:对象字面量转成新的对象格式,添加到list当中
... submitFunc() {//....// 转成Object再使用其 entries 和 reduceconst specialOtherParameters = Object.entries(this.specialParameter).reduce((arr, [key, value]) => {const param = { paramName: key, paramValue: value }arr.push(param);return arr;},[]);this.$data.formData.otherParameter.push(...specialOtherParameters);// ...}
提交后展示:
getInfo() {// 数据整理 ...const filterOtherParameter = this.$data.formData.otherParameter.reduce((acc, item) => {// 字面量的属性是否匹配 用inif(item.paramName in this.specialParameter ){// 字面量的属性赋值this.specialParameter[item.paramName] = item.paramValue} else {acc.push(item)}return acc;}, []) this.$data.formData.otherParameter = filterOtherParameter;}
开发过程中注意到Object / Map 与对象字面量的区别:
- obj.entries() obj.keys() map.set()是对象的方法, 字面量没有
- 字面量的属性判断可以用 in
- 字面量的属性赋值 需要用 wordValue[paramName]=paramValue
po 官网:
内置对象