当前位置: 首页 > 面试题库 >

Javascript对象push()函数

宋昕
2023-03-14
问题内容

我有一个javascript对象(实际上是通过ajax请求获取数据的):

var data = {};

我已经添加了一些东西:

data[0] = { "ID": "1"; "Status": "Valid" }
data[1] = { "ID": "2"; "Status": "Invalid" }

现在,我要删除状态无效的所有对象(但保持所有顺序相同):

var tempData = {};
for ( var index in data ) {
    if ( data[index].Status == "Valid" ) {
        tempData.push( data );
    }
}
data = tempData;

在我看来,所有这些都应该起作用,但是我收到的错误tempData.push不是函数。我知道为什么它与数组不一样,但是我该怎么办?


问题答案:

push()适用于数组,而不是对象,因此请使用正确的数据结构。

var data = [];
// ...
data[0] = { "ID": "1", "Status": "Valid" };
data[1] = { "ID": "2", "Status": "Invalid" };
// ...
var tempData = [];
for ( var index=0; index<data.length; index++ ) {
    if ( data[index].Status == "Valid" ) {
        tempData.push( data );
    }
}
data = tempData;


 类似资料:
  • 本文向大家介绍详解JavaScript函数对象,包括了详解JavaScript函数对象的使用技巧和注意事项,需要的朋友参考一下 函数 函数是由事件驱动的或者当它被调用时执行的可重复使用的代码块。 注释:   形参不需要加上类型;   return语句为可选,没有return语句的函数返回undefined;  局部变量与全局变量   在函数内声明:局部变量   在函数外声明:全局变量   向一个新

  • 本文向大家介绍详解JavaScript中的函数、对象,包括了详解JavaScript中的函数、对象的使用技巧和注意事项,需要的朋友参考一下 JS中的函数声明方式 方式一 function 函数名(){ 函数体 } 方式二 var 函数名=function(){ 函数体 } 方式三 var 函数名=new Function(“函数体”); 执行方式 函数名(); JS中的对象 类似Java中的一些系

  • 为什么返回的时候只能写成return obj[checkProp]; 而不能写成return obj.checkProp;会输出Undefined

  • 本文向大家介绍JavaScript 获取函数对象的名称,包括了JavaScript 获取函数对象的名称的使用技巧和注意事项,需要的朋友参考一下 示例 6 ES6: 关于MDN的说明。自2015年起,可以在nodejs和除IE之外的所有主要浏览器中使用。 5 ES5: 如果您有对该功能的引用,则可以执行以下操作:

  • 打印c时,c的值是初始化的值,x,y都是1。a变化了不影响c。 那么函数d在初始化时,x:b(),y:a为什么不初始化为x:1,y:1呢,就是这样

  • 本文向大家介绍javaScript的函数对象的声明详解,包括了javaScript的函数对象的声明详解的使用技巧和注意事项,需要的朋友参考一下 写作缘由:     平时再用js写函数的时候,一般都是以惯例 function fn () {} 的方式来声明一个函数,在阅读一些优秀插件的时候又不免见到     var fn = function () {} 这种函数的创建,究竟他们用起来有什么区别呢,