tor*_*gen 2 javascript ecmascript-6
我有一个以下语法的对象文字:
const loader = {
"0": "b",
"1": "a",
"2": "r",
// arbitrary extra fields:
"foo": 123,
"quux": 456,
}
Run Code Online (Sandbox Code Playgroud)
我想将它转换为数组["b", "a", "r"]然后转换为字符串"bar",这是我的最终目标.我不需要任何额外的字段,如果有的话,可以安全地丢弃它们.
它很诱人Array.from(loader),但不幸的是Array.from期望length属性出现,我没有.
鉴于在我的情况下不保证对象文字键顺序,这是我迄今为止提出的最简洁的解决方案:
function convert(obj) {
const a = [];
for (const k in obj) {
a[k] = obj[k];
}
return a.join('');
}
Run Code Online (Sandbox Code Playgroud)
虽然我不喜欢它,但它对我来说似乎是多余的和不优雅的.有什么我可能错过的吗?我可以自由使用ES6中的任何东西.
您可以转换对象的数组并将连接的值作为字符串.
var loader = { 0: "b", 1: "a", 2: "r", foo: 123, quux: 456 },
string = Object.assign([], loader).join('');
console.log(string);Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
56 次 |
| 最近记录: |