如何使用 JavaScript 有条件地将成员添加到对象?
对象是最重要的数据类型,是现代 JavaScript 的构建块。它们与 String、Number、Boolean、null 等原始数据类型不同。但是我们可以使用new关键字将这些数据类型作为对象。有两种方法可以有条件地将成员添加到对象。
方法 1:此方法涉及检查所需条件是否为真,并基于属性添加到对象。
示例:在此示例中,如果条件为真,则“b”将作为成员添加到“a”,否则不添加。
Javascript
// Define the object
var a = {};
// Check if the condition
// is satisfied
if (someCondition) {
// Add the required
// property to the object
a.b = 7;
}
Javascript
var a = {
// Use the ternary operator to check
// if the property should be added
// to the object
b: (someCondition? 7 : undefined)
};
Javascript
var newObject = $.extend({}, {
a: conditionA ? 7 : undefined,
b: conditionB ? 9 : undefined,
// More properties as required
});
输出:
满足条件时:
{b: 7}
不满足条件时:
{}
这种方法也可以以惯用的方式使用,使用三元运算符。
示例:在此示例中,如果条件为真,则“b”将作为成员添加到“a”,否则不添加。
Javascript
var a = {
// Use the ternary operator to check
// if the property should be added
// to the object
b: (someCondition? 7 : undefined)
};
输出:
满足条件时:
{b: 7}
不满足条件时:
{b: undefined}
方法二:该方法用于向一个对象添加多个成员。 jQuery 库函数$.extend()用于此方法。但是,这不会将未定义的属性复制到对象。
例子:
Javascript
var newObject = $.extend({}, {
a: conditionA ? 7 : undefined,
b: conditionB ? 9 : undefined,
// More properties as required
});
输出:
当满足第一个条件时:
{a: 7}
当两个条件都满足时:
{a: 7, b: 9}