在javascript中将字符串作为参数传递

在javascript中将字符串作为参数传递,javascript,arrays,json,object,push,Javascript,Arrays,Json,Object,Push,我创建了以下函数 var jsonData = <?php echo $jsondata; ?>; var objectLength = <?php echo $lines; ?>; /*length of the object*/ var dataArray = []; var objectParser = {}; objectParser.getArrays =

我创建了以下函数

        var jsonData = <?php echo $jsondata; ?>;                            
    var objectLength = <?php echo $lines; ?>; /*length of the object*/
    var dataArray = [];
    var objectParser = {};  
    objectParser.getArrays = function(jsonData, dataType) {
        var i = 0;                          
        stringName = dataType;      
        for (i = 0; i<=objectLength; i++) {
            dataArray.push(jsonData[i].stringName);                 
        }
        return dataArray; 
    }

    var timeStamp = objectParser.getArrays(jsonData,'timestamp');

    console.log(timeStamp);
在代码中,我不知道为什么会发生这种情况。做

console.log(jsonData[0].timestamp)
工作正常

下面是json数据示例
[{
“时间戳”:“12\/16\/2013 0:00”,
“curr_财产”:“7211”,
“当前财产成本”:“123”,
“day_财产”:“48”,
“日财产成本”:“281”,
“电流太阳能发电”:“4958”,
“curr_solar_导出”:“0”,
“太阳能发电日”:“33”,
“day_solar_导出”:“0”,
“curr_chan1”:“1964年”,
“curr_chan2”:“4958”,
“curr_chan3”:“289”,
“第1天”:“13”,
“第二天”:“33”,
“第三天”:“1”

},….]
无法读取未定义的属性“stringName”
表示上一个操作给出了未定义的值而不是对象

紧跟在
.stringName
之前的操作是
jsonData[i]
,因此该菜单指向一个JSON中不存在的索引

这可能是由于您的循环,它从0到
objectLength
included。我会改变的


另外,@Satpal的答案也适用。

无法读取未定义的属性“stringName”
意味着前面的操作给出了未定义的值而不是对象

紧跟在
.stringName
之前的操作是
jsonData[i]
,因此该菜单指向一个JSON中不存在的索引

这可能是由于您的循环,它从0到
objectLength
included。我会改变的

此外,@Satpal的答案也适用。

使用

而不是

jsonData[i].stringName
尽管建议
jsonData[i]
未定义。您访问该属性的方式不正确

编辑 也要注意使用条件
i

而不是

jsonData[i].stringName
尽管建议
jsonData[i]
未定义。您访问该属性的方式不正确

编辑
还要注意的是,objectLength的idatatype设置为number,console.log(jsonData[somerandomno].timestamp)也可以工作。有什么问题吗?@Bazinga777问题之一是你的索引上限被包括在内(≤), 另一个是对象属性访问的用法不正确。请再次阅读我们的两个答案。谢谢,问题在于objectlength的上限。objectlength的数据类型设置为number and console.log(jsonData[somerandomno].timestamp)同样有效。有什么问题吗?@Bazinga777问题之一是你的索引上限被包括在内(≤), 另一个是对象属性访问的不正确用法。请再次阅读我们的两个答案。谢谢,问题在于objectlength的上限。
jsonData[i].stringName