无法访问Object/Json

Cannot reach Object/Json

本文关键字:Json Object 访问      更新时间:2023-09-26

我不确定这是什么,但我相信是Json
{"objekt_nr":"22133-01"}

我试着把它转换成这样的字符串:

function myFunction(objNr){
    objNr = objNr.objekt_nr;
    console.log(objNr);

这将导致undefined

如果我评论转换部分,我得到:{"objekt_nr":"22133-01"}

如何在字符串中获取此Json/object/array,如:22133-01

我也尝试过:objNr = objNr[0];objNr = objNr['objekt_nr']

代码运行良好。也许myFunction()的呼叫是错误的。

属性的访问权限为:

  • 直接object.property
  • 带有字符串object['property']

var obj = { "objekt_nr": "22133-01" };
function myFunction(objNr) {
    objNr = objNr.objekt_nr; // i do not recommend the assignment to the former object!
    document.write(objNr);
}
myFunction(obj);

编辑:假设你有一个JSON字符串,比如'{"objekt_nr":"22133-01"}',那么你必须首先用JSON.parse来解析它。结果是一个对象。

function myFunction(JSONstring) {
    var obj = JSON.parse(JSONstring);
    document.write(obj.objekt_nr);
}
myFunction('{"objekt_nr": "22133-01"}');

您有一个表示对象的JSON字符串。您还没有实际的对象。如果您想访问属性,您需要首先使用JSON.parse():将其转换为对象

var objNr = JSON.parse(objNr); // create an object from your JSON
function myFunction(objNr) {
    objNr = objNr.objekt_nr;
    console.log(objNr);
}