该RegExp.exec
函数返回一个看起来像混合数组的东西。它是一个数组,但它具有属性。
console.log(/d(b+)(d)/i.exec("cdbBdbsbz"));
// => ["dbBd", "bB", "d", index: 1, input: "cdbBdbsbz"]
我可以打电话给result[0]
, result[1]
, result.index
,result.input
等。
我如何自己制作?
[0, 1, "a": 1]
显然是一个语法错误,并且{"0": 1, "1": 1, "a": 1}
确实给了我一个可以索引和访问属性的对象,但是它与exec
.
我试着用__proto__
:
arr = [1, 2, 3];
arr.__proto__.a = 1 // arr.a is 1 now
但是console.log
不会像在结果上运行时那样显示属性exec
,所以我怀疑它仍然不是一回事。