У меня есть объект JSON, как показано ниже, я хочу удалить весь объект key, value pair из этого объекта. Мое приложение использует AngularJS. например, ниже мой объект
var items = [
{name:"Nick"},
{name:"Lee"},
{name:"Jenny"},
{name:null},
{name:null},
{name:null},
{name:"Graham"},
{name:"Erica"}]
Я хочу новый объект с именами, у которых нулевое значение удалено. Существуют ли какие-либо готовые функции в Angular или Underscore js
Вы можете сделать это прямо в javascript
items.filter( i => i.name );
// or in ES5
items.filter(function(i) {return i.name});
Это выглядит немного странно, поскольку вы полагаетесь на истинность javascript, чтобы сделать null как false, а что-то еще, как "true",
i.name
null
и не полагаться на неявное преобразование JavaScript в логическое значение.
Вы можете удалить пустые и пустые значения строки из объекта json по нижнему коду.
У меня есть json object call sjonObj
и хочу удалить всю пустую и пустую строку.
sjonObj = (function filter(obj) {
var filtered = _.pick(obj, function (v) { return v !== '' && v !== null; });
return _.cloneDeep(filtered, function (v) { return v !== filtered && _.isPlainObject(v) ? filter(v) : undefined; });
})(sjonObj);
Я не совсем уверен, что понял ваш вопрос. Если вы действительно хотите удалить (удалить) свойства из объекта, вы можете перебирать его ключи и использовать delete
.
var obj = {
a: 1,
b: 2,
c: 3
};
Object.keys(obj).forEach(key => {
delete obj[key];
});
console.log(obj); // prints empty object { }