【问题标题】:How to convert a number into a string and use it as an array key in Javascript?如何将数字转换为字符串并将其用作 Javascript 中的数组键?
【发布时间】:2017-01-28 16:53:09
【问题描述】:

我正在尝试将数字转换为字符串以用作键。但问题是,当我新转换的字符串时,它仍然像一个数字一样。有正确的方法吗?

JAVASCRIPT

var arr = [];

var num = 3;

var key = String(''+num); //Convert number into string

//var key = ''  +num;         //Tried this
//var key = num.toString(); //Tried this also

array[key] = true;

console.log(arr); //Returns [, , true]
console.log(arr.length); //Returns 3

基本上,我希望它只返回:

console.log(arr); //Return [true]
console.log(arr.length); //Return 1

【问题讨论】:

  • 你想要什么?请同时添加结果。
  • JavaScript 将您与[ ] 运算符一起使用的任何表达式转换为字符串。你根本不需要做任何事情。 arr[3]arr["3"] 相同。
  • 如何将3 映射到索引0
  • @tery.blargh 好吧,答案是你不能那样做。但是,您可以使用普通对象而不是数组。
  • 我不确定你想要实现什么,但是数组没有“键”,可能你想使用和 Object 来代替?

标签: javascript html arrays string key


【解决方案1】:

您要查找的是 Object ({}) 而不是 Array ([])。改用这个:

var obj = {};
var key = 3;
obj[key] = true; // no need to convert the key to string

示例:

var obj = {};
var key = 3;
obj[key] = true;

console.log(obj);

【讨论】:

  • 所以你正在寻找一个对象,而不是一个数组。普通对象没有(内置)长度属性。
  • 他们在Object.keys() 之后做 :)
猜你喜欢
  • 2015-10-26
  • 2015-11-11
  • 1970-01-01
  • 2022-01-23
  • 2020-12-23
  • 1970-01-01
  • 2023-02-01
  • 1970-01-01
  • 2022-11-29
相关资源
最近更新 更多