小编Jim*_*avs的帖子

单个数组[0]项返回undefined

所有开发者比我聪明,

所以基本上我有一个名字(第一个)输入字段,我想让用户在输入中输入他们的名字和姓氏.之后,我想取第二个值(姓氏)并将值推送到另一个输入hidden(display:none).所以理论上下面的代码应该这样做

var array = [];

var fullname = $("#firstName").value.split(" ");

array.push(fullname);

$("#lastName").value = array[1];

alert(array[1])
Run Code Online (Sandbox Code Playgroud)

例如iI我将"First Last"作为firstName输入中的名称值并分割并推送到数组,如果我提醒它alert(array) or $("#lastName").value = array,它确实会推送正确的值,但是当我尝试提醒或仅设置第2部分时数组[1]它不断变回未定义!?请各位朋友赐教.

javascript arrays jquery

4
推荐指数
1
解决办法
152
查看次数

如何使用 TS 类型作为值

我有一个 TypeScript 类型,它有一堆字符串,它的定义如下:

type Regions = "" | "eu-west-1" | "eu-east-1" | "us-west-1" | "us-east-1" | "ap-southeast-1" | "ap-east-1"
Run Code Online (Sandbox Code Playgroud)

然后我稍后在我的代码中通过查询字符串参数从 URL 获取区域。假设从 URL 中检索到的区域是一个名为的变量region

所以我在我的代码中做一些验证,我想确保regionis 的类型Regions

因此,为了进行验证,我的代码说: if (region in Regions) { doStuff();}

如果 Region 是所有这些区域的变量,这将起作用。

然而,由于 Regions 是一种类型,它会抛出一个错误说: 'Regions' only refers to a type, but is being used as a value here

我明白为什么,但我怎样才能使用或扩展 type Regions

我真的不想创建另一个对象或字符串数​​组,我只想使用我现有的类型来做这个验证。

我确实创建了一个这样的枚举:

enum RegionsList {
  'eu-west-1',
  'eu-east-1',
  'us-west-1',
  'us-east-1',
  'ap-southeast-1',
  'ap-east-1'
}
Run Code Online (Sandbox Code Playgroud)

然后做了,region in RegionsList但这已经有点复制我的 Regions 类型了,必须有一个更好的解决方案,结合 …

javascript validation enums types typescript

0
推荐指数
1
解决办法
636
查看次数

标签 统计

javascript ×2

arrays ×1

enums ×1

jquery ×1

types ×1

typescript ×1

validation ×1