ts 字符串不能做索引异常提示 type because expression of type ‘string‘

Element implicitly has an 'any' type because expression of type 'string' can't be used to index type

例子

复制代码
let a={
  b:"1",
  c:"1"
}
var b="b";
let c=a[b]

let c=a[b]就会爆这个错误,因为在编译器看来b是一个未知的东西,它不属于a下面的任何一个属性b或者c,所以我们需要告诉它。

把代码改成下面:

复制代码
let a={
  b:"1",
  c:"1"
}
var b="b";
let c=a[b as keyof typeof a]
相关推荐
vvilkim12 分钟前
Flutter开发入门:Dart语言基础全面解析
android·前端·flutter
Allen Bright12 分钟前
【CSS-4】掌握CSS文字样式:从基础到高级技巧
前端·css
lens9417 分钟前
Oxlint v1.0.0 发布:ESLint 的性能革命,快 50~100 倍!
前端·javascript
这里是阿栗19 分钟前
TS进阶!深入探索 TypeScript 工具类型:内置神器与高阶扩展
前端·typescript
DarkLONGLOVE21 分钟前
一键锁死网页内容!这个JS函数让你的原创无法被复制!
前端·javascript
DarkLONGLOVE21 分钟前
彻底解决"'vue-cli-service' 不是内部或外部命令"的问题!
前端·vue.js
curdcv_po34 分钟前
甲方嫌弃,项目首页加载太慢
前端
刘同学有点忙36 分钟前
技术升级中的"幽灵Bug"排查:从message失效看架构迁移的隐性成本
前端
不会飞的鲨鱼37 分钟前
FastMoss 国际电商Tiktok数据分析 JS 逆向 | MD5加密
javascript·python·数据挖掘·数据分析
怪大叔952737 分钟前
vue组件之远程组件
前端·javascript·vue.js