javascript - 无法通过键更改值
问题描述
我是 JavaScript 新手。我有一个树结构,当数组长度大于 5 时,我想将“标签”属性值从字符串数组更改为字符串。
ChangeTags(obj) {
Object.keys(obj).forEach(key => {
(key === 'tags' && obj[key].length > 5) && obj["tags"] = "some value" ||
(obj[key] && typeof obj[key] === 'object') && this.removeEmptyNodes(obj[key]);
});
return obj;
};
口译员不允许我在第 4 行做作业。我究竟做错了什么?
解决方案
我认为你的问题是括号。尝试这个:
ChangeTags(obj) {
Object.keys(obj).forEach(key => {
((key === 'tags' && obj[key].length > 5) && obj["tags"] = "some value") ||
((obj[key] && typeof obj[key] === 'object') && this.removeEmptyNodes(obj[key]));
});
return obj;
};
推荐阅读
- java - Keycloack 是一个 MessageDigestPasswordEncoder sha512 存在吗?
- vue.js - 如何在 v-calendar 中删除或隐藏标题
- javascript - 如果匹配单词中存在“s”,如何包含它?
- reactjs - React 应用程序:Jest 遇到了意外的令牌 webpack 打字稿
- c# - .Net File.Exists - C# 与 PowerShell
- python - Web Scraping 识别请求的执行和故障排除
- python - 在格式说明符中使用字母“f”时究竟做了什么?
- kotlin - 存储静态数据的好方法是什么?就像塔防游戏地图上的物品及其统计数据、奖励数据或航点
- r - 这个涉及 train 功能的 R 代码哪里出错了?
- c++ - 将指针对象保存到系统并在c ++(不是c)中加载它