json转换
- JSON.stringify([“111”,“222”])
- JSON.parse("[“111”,“222”]")
时间截取
customRender:function (text) {
return !text?"":(text.length>10?text.substr(0,10):text)
}
push()
- push() 方法可向数组的末尾添加一个或多个元素,并返回新的长度。
- 要想数组的开头添加一个或多个元素,请使用 unshift() 方法。
for (let i = 0; i < this.sourceDataAll.length; i++) {
this.sourceDataA.push({
x: this.sourceDataAll[i].deliveryCnt ? this.sourceDataAll[i].deliveryCnt : 0,
y: this.sourceDataAll[i].expCompany,
})
this.sourceDataE.push(
{
city: this.sourceDataAll[i].expCompany,
type: '丢失率',
value: this.sourceDataAll[i].loseRate ? parseFloat(this.sourceDataAll[i].loseRate): 0.00,
},
{
city: this.sourceDataAll[i].expCompany,
type: '坏件率',
value: this.sourceDataAll[i].damageRate ? parseFloat(this.sourceDataAll[i].damageRate) : 0.00,
},
{
city: this.sourceDataAll[i].expCompany,
type: '错件率',
value: this.sourceDataAll[i].wrongRate ? parseFloat(this.sourceDataAll[i].wrongRate) : 0.00,
}
)
}
map()
定义/语法
- map() 方法返回一个新数组,数组中的元素为原始数组(每一个)元素调用函数处理后的值。
- map() 方法按照原始数组元素顺序依次处理元素。
array.map(function(currentValue,index,arr), thisValue)
举例注意:
var array1 = [1, 4, 9, 16];
const map1 = array1.map(x => {
if (x == 4) {
return x * 2;
}
});
console.log(map1);
//> Array [undefined, 8, undefined, undefined]
为什么会出现三个undefined呢?而不是预期的[1,8,9,16]。
这样写只是增加了一个条件,即x的值为4时才乘以2,之所以会出现undefined,是因为map()方法创建了一个新数组,但新数组并不是在遍历完array1后才被赋值的,而是每遍历一次就得到一个值。所以,下面这样修改后就正确了:
var array1 = [1, 4, 9, 16];
const map1 = array1.map(x => {
if (x == 4) {
return x * 2;
}
return x;
});
这里注意箭头函数有两种格式:
- 只包含一个表达式,这时花括号和return都省略了。
- 包含多条语句,这时花括号和return都不能省略。
ES6参考链接