我想根据标志值在对象中设置一些键
例如
const ourFlag = true //true or false depends on case
const ourObject = {
name: 'Pablo',
secondName: 'Picasso',
[ourFlag && 'age']: 20,
[ourFlag && 'moreComplexValue']: [
{
val: true
},
{
val: false
}
]
}
只要ourFlag
设置为true
一切都按我的预期工作,但是当我将其值更改为false
时,一些奇怪的事情开始出现。
属性年龄不再存在-良好,但属性更复杂值现在为假
当标志为false时得到的代码:
js prettyprint-override">{
name: 'Pablo',
secondName: 'Picasso',
// age disappear as I expected
false: [ //why!?!
{
val: true
},
{
val: false
}
]
}
当标志为true时得到的代码:
{ . //brilliant everything is fine
name: 'Pablo',
secondName: 'Picasso',
age: 20,
moreComplexValue: [
{
val: true
},
{
val: false
}
]
}
有没有办法用这些计算属性来处理它?
问题是javascript对象键始终是字符串,否则会被类型化为字符串。
因此,当值为false时,它变为字符串“false”,并且同一个键被使用两次并用第二个值重写
要动态设置关键点,可以将其设置为未定义或使用if。。其他的
const ourFlag = true //true or false depends on case
const ourObject = {
name: 'Pablo',
secondName: 'Picasso',
}
if(ourFlag) {
ourObject.age = 20;
ourObject.moreComplexValue = [
{
val: true
},
{
val: false
}
];
}
<代码>[标志
一个更好的选择是使用对象扩展...标志
let ourFlag = true
const a = {
name: 'Pablo',
secondName: 'Picasso',
...ourFlag && {age: 20},
...ourFlag && {moreComplexValue: [1, 2, 3]}
}
ourFlag = false
const b = {
name: 'Pablo',
secondName: 'Picasso',
...ourFlag && {age: 20},
...ourFlag && {moreComplexValue: [1, 2, 3]}
}
console.log(a)
console.log(b)
问题内容: 看来,当我在对象中使用数字类型作为键名时,它总是会转换为字符串。无论如何,实际上是否可以将其存储为数字?正常的类型转换似乎不起作用。 例: 目录输出: 我 想要的 是: 忠告? 问题答案: 不,这是不可能的。 密钥将始终转换为字符串。 属性名称必须是字符串。这意味着非字符串对象不能用作对象中的键。任何非字符串对象(包括数字)都可以通过toString方法转换为字符串。
问题内容: 有什么方法可以将MouseListener添加到Graphic对象。 我有一个绘制椭圆的简单GUI。 我想要的是在用户单击椭圆形时处理事件 这是有效的,但当单击位于椭圆周围的虚拟框中时会触发。 当点击完全位于椭圆形上时,有人可以帮助我触发它。 提前致谢。 问题答案: 我想到的最简单的方法是避免fillOval并使用java.awt.geom包中的几何。因此,您可以声明一个椭圆,因为看起
问题内容: 我有一个具有多个程序包依赖项的项目,其主要要求在中列出。当我打电话时,它将当前安装的软件包打印为普通列表。我希望也获得他们的依赖关系,如下所示: 目的是检测每个特定程序包的依赖性: 并将它们插入我的当前。例如,对于此输入: 我想得到: 有什么办法显示已安装的pip软件包的依赖性? 问题答案: 您应该看一下: 它不会像您直接指示的那样生成文件。但是,源代码(255行python代码)应该
材料设计非常强调“纸张”的隐喻。要做到这一点,阴影是必不可少的。由于材料设计是一种理念,而不是API(尽管它内置在L中),因此应该在任何地方(Windows窗体、HTML/CSS等)进行设计。如何在Android API 14到20中做到这一点? 请注意,对于圆形和其他非方形形状,预制PNG实际上并不实用。
本文向大家介绍MongoDB中有什么方法可以获取json数据的内部值?,包括了MongoDB中有什么方法可以获取json数据的内部值?的使用技巧和注意事项,需要的朋友参考一下 要获取JSON数据的内部值,请与dot(。)表示法一起使用。让我们创建一个包含文档的集合- 在方法的帮助下显示集合中的所有文档- 这将产生以下输出- 以下是获取json数据的内部值的查询- 这将产生以下输出-
为类A编写单元测试时如何模拟外部依赖关系。当我以上述方式模拟依赖关系时,“a”的值没有按预期分配给100。