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]
相关推荐
江拥羡橙1 小时前
Vue和React怎么选?全面比对
前端·vue.js·react.js
千码君20161 小时前
React Native:快速熟悉react 语法和企业级开发
javascript·react native·react.js·vite·hook
楼田莉子3 小时前
Qt开发学习——QtCreator深度介绍/程序运行/开发规范/对象树
开发语言·前端·c++·qt·学习
暮之沧蓝3 小时前
Vue总结
前端·javascript·vue.js
木易 士心4 小时前
Promise深度解析:前端异步编程的核心
前端·javascript
im_AMBER4 小时前
Web 开发 21
前端·学习
又是忙碌的一天4 小时前
前端学习day01
前端·学习·html
Joker Zxc4 小时前
【前端基础】20、CSS属性——transform、translate、transition
前端·css
excel4 小时前
深入解析 Vue 3 源码:computed 的底层实现原理
前端·javascript·vue.js
大前端helloworld4 小时前
前端梳理体系从常问问题去完善-框架篇(react生态)
前端