3 回答
TA贡献1806条经验 获得超8个赞
您可以尝试以下方法
dps_cote.push({
x: i,
label: cote[i].x,
y: cote[i].y,
color: 'green',
indexLabelFontColor : "red",
indexLabelFontWeight: "bold",
indexLabel: marge[i].cas_v?marge[i].cas_v.toString():""
});
TA贡献1804条经验 获得超2个赞
let object = {
x: i,
label: cote[i].x,
y: cote[i].y,
color: 'green',
indexLabelFontColor : "red",
indexLabelFontWeight: "bold",
}
if (marge[i].cas_v) {
object.indexLabel = marge[i].cas_v.toString();
dps_cote.push(object);
} else {
dps_cote.push(object);
}
TA贡献1831条经验 获得超4个赞
所有的值都是用任意值定义的,以便提供一个有效的答案。
首先声明和/或定义变量
然后流控制,如条件
if/else if/else
和/或三元let x = 0 > y ? z : a
indexLabel
由于具有两个可能值之一,请避免重写像定义两次的对象那样的代码。如果您练习#1,那么重复的代码膨胀就不会成为问题。
三元组的不同之处if/else if/else
在于它就像一个表达式:
let iL = marge[i].cas_v ? marge[i].cas_v.toString() : "";
/*
if `marge[i].cas_v` exists then `iL` is `marge[i].cas_v.toString()`
otherwise it is `""`
*/
obj.indexLabel = iL;
// whatever `iL` ends up to be -- its assigned to `obj.indexLabel`
演示
/*
if i = 0 then indexLabel: "11"
if i = 1 then indexLabel: "121"
if i = 2 then indexLabel: "14641"
*/
let i = 0;
let cote = [{x: 0, y: 0}, {x: 1, y: 0}, {x: 0, y: 1}];
let marge = [{cas_v: 11}, {cas_v: 121}, {cas_v: 14641}];
let dps_cote = [];
let obj = {
x: i,
label: cote[i].x,
y: cote[i].y,
color: 'green',
indexLabelFontColor: "red",
indexLabelFontWeight: "bold",
indexLabel: ""
};
let iL = marge[i].cas_v ? marge[i].cas_v.toString() : "";
obj.indexLabel = iL;
dps_cote.push(obj);
console.log(dps_cote);
添加回答
举报