因此,我试图检查某些JSON数据是否包含某个键,如果包含,则显示该键值,但我一直得到一个错误“TypeError:无法读取未定义的属性'CurrentTextValue'
如何检查某个键是否存在,以及它是否显示了它的值。
null
var carj = '[{ "Description": "SAAB 900 S CONVERTIBLE", "RegistrationYear": "1993", "CarMake": { "CurrentTextValue": "SAAB" }, "CarModel": { "CurrentTextValue": "900 S CONVERTIBLE" }, "MakeDescription": { "CurrentTextValue": "SAAB" }, "ModelDescription": { "CurrentTextValue": "900 S CONVERTIBLE" }, "EngineSize": { "CurrentTextValue": "1985" }, "BodyStyle": { "CurrentTextValue": "Motorbike" }, "FuelType": { "CurrentTextValue": "PETROL" }, "Variant": "", "Colour": "BLACK", "VehicleIdentificationNumber": "YS3AD75S1P7004905", "KType": "", "EngineNumber": "B202S3M03P032338" }]';
carj2 = $.parseJSON(carj);
if(carj2[0].NumberOfDoors.CurrentTextValue != '') {
console.log(carj2[0].NumberOfDoors.CurrentTextValue);
} else {
console.log('i dont have doors');
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
null
您需要首先找到NumberOfDoors,然后查找值
这里我使用一个三值运算符输出
null
const carj = '[{ "Description": "SAAB 900 S CONVERTIBLE", "RegistrationYear": "1993", "CarMake": { "CurrentTextValue": "SAAB" }, "CarModel": { "CurrentTextValue": "900 S CONVERTIBLE" }, "MakeDescription": { "CurrentTextValue": "SAAB" }, "ModelDescription": { "CurrentTextValue": "900 S CONVERTIBLE" }, "EngineSize": { "CurrentTextValue": "1985" }, "BodyStyle": { "CurrentTextValue": "Motorbike" }, "FuelType": { "CurrentTextValue": "PETROL" }, "Variant": "", "Colour": "BLACK", "VehicleIdentificationNumber": "YS3AD75S1P7004905", "KType": "", "EngineNumber": "B202S3M03P032338" }]';
const carj2 = $.parseJSON(carj);
const NumberOfDoors = carj2[0].NumberOfDoors;
console.log( NumberOfDoors ? NumberOfDoors.CurrentTextValue : 'I don\'t have doors');
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
null
var carj = '[{ "Description": "SAAB 900 S CONVERTIBLE", "RegistrationYear": "1993", "CarMake": { "CurrentTextValue": "SAAB" }, "CarModel": { "CurrentTextValue": "900 S CONVERTIBLE" }, "MakeDescription": { "CurrentTextValue": "SAAB" }, "ModelDescription": { "CurrentTextValue": "900 S CONVERTIBLE" }, "EngineSize": { "CurrentTextValue": "1985" }, "BodyStyle": { "CurrentTextValue": "Motorbike" }, "FuelType": { "CurrentTextValue": "PETROL" }, "Variant": "", "Colour": "BLACK", "VehicleIdentificationNumber": "YS3AD75S1P7004905", "KType": "", "EngineNumber": "B202S3M03P032338" }]';
carj2 = $.parseJSON(carj);
// Method 1
if ("numberOfDoors" in carj2[0]) {
console.log(carj2[0].NumberOfDoors.CurrentTextValue);
} else {
console.log('i dont have doors');
}
// Method 2
console.log(carj2[0].NumberOfDoors?.CurrentTextValue || "i dont have doors");
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
问题内容: 我有一张桌子来存储有关我的兔子的信息。看起来像这样: 我该如何找到喜欢胡萝卜的兔子?我想出了这个: 我不喜欢那个查询。一团糟。 作为专职兔子管理员,我没有时间更改数据库架构。我只想适当地喂兔子。有没有更可读的方法来执行该查询? 问题答案: 从PostgreSQL 9.4开始,您可以使用operator: 如果改用 jsonb 类型,甚至可以在键上为查询建立索引: __ 当然,作为专职兔
我试图检查python列中是否包含某个值。我正在使用,这无疑是一个很好的工具。问题是我有超过350K行,输出不会显示所有行,这样我就可以看到值是否实际包含。简单地说,我只想知道(Y/N)列中是否包含特定的值。我的代码如下:
问题内容: 在Python中,如何检查是否有数据? 我发现不仅可以检查stdin是否已连接到TTY设备,还可以检查是否有可用数据。 但是如果有人使用诸如 然后使用,它仍然返回True。我需要做什么检查stdin是否有数据? 问题答案: 在Unix系统上,您可以执行以下操作: 在Windows上,虽然select模块只能与套接字一起使用,所以您需要使用其他机制。
问题内容: 给定一个整数,如何使用Java检查它是否包含0? 如何才能做到这一点? 问题答案: 您是说小数表示形式是否包含0?绝对 最简单的 方法是: 别忘了一个数字并不“固有地”包含一个0或不包含0(当然,零本身除外)-它取决于底数。因此,十进制的“ 10”是十六进制的“ A”,而十六进制的“ 10”是十进制的“ 16”……在两种情况下,结果都会改变。 在整数的十进制表示形式中,可能有更有效的方
问题内容: 我正在尝试检查python列中是否包含某个值。我正在使用,我毫不怀疑它是一个很好的工具。问题是我有超过350K的行,并且输出不会显示所有的行,因此我可以查看该值是否实际包含在内。简而言之,我只想知道(Y / N)列中是否包含特定值。我的代码如下: 问题答案: 我认为如果需要行,其中column的值包含string : 或者,如果的列是: 如果要检查 列中的最后4位数字: 样品:
问题内容: 检查字符串切片中是否存在某个值的最佳方法是什么?我会用其他语言的Set,但Go没有。 到目前为止,我最好的尝试是: http://play.golang.org/p/gkwMz5j09n 对于小切片,此解决方案应该可以,但是对于包含许多元素的切片,该怎么办? 问题答案: 如果您具有任意顺序的字符串切片,则查找切片中是否存在值需要O(n)时间。这适用于所有语言。 如果您打算一遍又一遍地进
我在我的Java应用程序中使用Jackson JSON库及其Tree Model系统()。在这种情况下,我需要检查是否包含给定的。我正在浏览JavaDocs,并且没有看到的任何类型的方法。我最终自己写了一个包含方法: 单元测试: 我是否错过了杰克逊的一些东西,我正在复制一些我错过的图书馆方法。否则,还有比我做的更好的方法吗?
问题内容: 有什么方法可以检查一个集合是否包含一个或多个具有比使用contains循环两次更好的性能的值? 在其他意义上看起来像这样 问题答案: 循环的实现遍历每个元素并进行测试,因此调用两次 效率低下 。 您可以编写自己的循环,使用已编译的regex 模式同时检查两者,同时查找两个名称: