javascript - 如何返回 false 而不是“TypeError:无法读取属性”?
问题描述
我有一个代码可以找到 A 列中的值并返回该行中的其他列值:
function getCurrentRow(e) {
var parsedJson = JSON.parse(e.postData.contents);
var ss = SpreadsheetApp.openById("...");
var sheet = ss.getSheetByName("List");
var column = sheet.getRange("A:A");
var values = column.getValues();
var row = 0;
while ( values[row] && values[row][0] !== parsedJson.myValue ) {
row++;
}
if (values[row][0] === parsedJson.myValue) {
var record = {};
record['top'] = sheet.getRange((row+1), 2).getValue();
record['bottom'] = sheet.getRange((row+1), 3).getValue();
return ContentService.createTextOutput(JSON.stringify(record)).setMimeType(ContentService.MimeType.JSON);
}
}
它可以工作,但是当它找不到 myValue 时它会返回
TypeError:无法从未定义中读取属性“0”。
在这一行:
if (values[row][0] === parsedJson.myValue) {
我该如何解决这个问题并返回“找不到 myValue”?
解决方案
if (values[row][0] === parsedJson.myValue) {
应该
if (values[row] && values[row][0] === parsedJson.myValue) {
推荐阅读
- python - 如何在 tkinter 上获取帧的行
- sql - DB2 - 如何检索从末尾开始的最后一个子字符串
- qt - 2021 年用“补丁 Qt”编译 wkhtmltopdf
- serverless-framework - 如何在不使用 serverless-pseudo-parameters 插件的情况下在无服务器框架中使用或引用 AWS::AccountId?
- python - Windows 上的不同 Python 与 Anaconda/PyCharm
- vscode-settings - 未提交的更改“折叠箭头”颜色 VSCode
- android - Expo 应用程序卡在启动画面(仅限 Android)
- python - 使用 pandas 获取重复统计信息(如缺失值)的优雅方法
- c# - dapr getall:怎么做?
- javascript - 将列添加到 csv 文件 javascript:nodejs