Javascript JS数组附加

Javascript JS数组附加,javascript,Javascript,我正在努力做 a=['a',2,3]; a+=function(){return 'abc'}; console.log(a[3]); 因此,我想用一种简捷的方式来表示a.push() 有什么操作符可以让我这么做吗?据我所知,你不能做操作符重载,所以那是不可能的。据我所知,你不能做操作符重载,所以那是不可能的。a.push(value)是一种简写方式哈哈。另一种方法是a[a.length]=valuea.push(value)是速记方法哈哈。另一种方法是a[a.length]=value您可以

我正在努力做

a=['a',2,3];
a+=function(){return 'abc'};
console.log(a[3]);
因此,我想用一种简捷的方式来表示a.push()


有什么操作符可以让我这么做吗?

据我所知,你不能做操作符重载,所以那是不可能的。

据我所知,你不能做操作符重载,所以那是不可能的。

a.push(value)
是一种简写方式哈哈。另一种方法是
a[a.length]=value
a.push(value)
是速记方法哈哈。另一种方法是
a[a.length]=value

您可以使用
.split()
将字符串转换为数组:

然后使用
.concat()
附加结果:

a = a.concat( '123'.split() )


当然,如果您愿意,可以随时将其封装在函数中。

您可以使用
.split()将字符串转换为数组。

然后使用
.concat()
附加结果:

a = a.concat( '123'.split() )


当然,如果您愿意,可以随时将其封装在函数中。

否-在任何情况下,以下内容都没有问题:

var a = ['a', 'b', 'c'];
a.push('d');
如果要推送返回值:

a.push((function() { return 'e'; })());

没有-在任何情况下,以下各项都没有问题:

var a = ['a', 'b', 'c'];
a.push('d');
如果要推送返回值:

a.push((function() { return 'e'; })());
否,允许您截取分配
=
,但不存在允许截取和重新解释
+
+=
的运算符重载

如果您知道要添加的内容是一个单一的原始值,您可以伪造它

var appendable = {
   x_: [1, 2],
   get x() { return this.x_; },
   set x(newx) { this.x_.push(newx.substring(("" + this.x_).length)); }
};

alert(appendable.x);
appendable.x += 3;
alert(appendable.x);  // alerts 1,2,3 not 1,23
alert(appendable.x.length);
但实际上,
.push
是将内容推送到数组末尾的最佳方式。

否,允许您截取赋值
=
,但不存在允许截取和重新解释
+
+=
的运算符重载

如果您知道要添加的内容是一个单一的原始值,您可以伪造它

var appendable = {
   x_: [1, 2],
   get x() { return this.x_; },
   set x(newx) { this.x_.push(newx.substring(("" + this.x_).length)); }
};

alert(appendable.x);
appendable.x += 3;
alert(appendable.x);  // alerts 1,2,3 not 1,23
alert(appendable.x.length);

但实际上,
.push
是将内容推送到数组末尾的最佳方式。

这看起来可能不会短很多,但如果使用
aReallyReallyLongVariableName
进行操作,则不必(错误地)键入两次就很方便了。这看起来可能不会短很多,但如果使用
aReallyReallyLongVariableName
进行操作,不必打字两次很方便。