相关疑难解决方法(0)

不区分大小写访问JavaScript属性?

假设我有一个对象:

var obj = {
  foo:"bar",
  fizz:"buzz"
};
Run Code Online (Sandbox Code Playgroud)

我需要动态访问该对象的属性,如下所示:

var objSetter = function(prop,val){
  obj[prop] = val;
}
Run Code Online (Sandbox Code Playgroud)

没有问题,除了那些prop需要不区分大小写,如果属性名称被传递到函数中,比如说,Foo而不是foo.

那么如何在不考虑大小写的情况下通过名称指向对象的属性呢?我想尽可能避免迭代整个对象.

javascript properties object

61
推荐指数
4
解决办法
4万
查看次数

如何将字符串转换为 Typescript 中的枚举

枚举定义:

enum Colors {
  Red = "red",
  Blue = "blue"
}
Run Code Online (Sandbox Code Playgroud)

我如何将一些任意的刺(例如来自 GET 请求的结果)投射到枚举?

const color: Colors = "blue"; // Gives an error
Run Code Online (Sandbox Code Playgroud)

我知道在这里可以使用联合,但是我需要使用一个库,并且在这个库中他们使用的是枚举。所以我必须将我的字符串转换为它们的枚举类型。

另外,为什么整数枚举可以工作,而字符串枚举却没有相同的行为?

enum Colors {
  Red = 1,
  Blue
}

const color: Colors = 1; // Works
Run Code Online (Sandbox Code Playgroud)

javascript node.js typescript typescript-typings

8
推荐指数
1
解决办法
6887
查看次数