Syntax 在许多语言中,用于前置变量的速记逻辑

Syntax 在许多语言中,用于前置变量的速记逻辑,syntax,Syntax,我很感兴趣,为什么赋值运算符的简写形式只能以一种方式工作,这意味着附加变量的值 例如(在Javascript中): 我经常发现需要预先添加变量的情况: 前 假设x和y是字符串,您正在连接 我希望有一个语法,允许如下内容: x=+y 就像我用I++或I++做的一样,我用递增的数字 有一些语言支持这个吗?肯定x=y+x和y+=x是一样的 我很困惑,为什么你要学习一种新的语言,只是为了节省一个字符 但是,我建议使用JQuery的.prepend()方法 肯定x=y+x与y+=x相同 我很困惑,为什么

我很感兴趣,为什么赋值运算符的简写形式只能以一种方式工作,这意味着附加变量的值

例如(在Javascript中):

我经常发现需要预先添加变量的情况:

假设x和y是字符串,您正在连接

我希望有一个语法,允许如下内容:

x=+y
就像我用I++或I++做的一样,我用递增的数字


有一些语言支持这个吗?

肯定x=y+x和y+=x是一样的

我很困惑,为什么你要学习一种新的语言,只是为了节省一个字符

但是,我建议使用JQuery的
.prepend()
方法


肯定x=y+x与y+=x相同

我很困惑,为什么你要学习一种新的语言,只是为了节省一个字符

但是,我建议使用JQuery的
.prepend()
方法


有些语言允许定义新的运算符和/或重载现有运算符(请参阅)


但是操作符和它们的使用应该是明确的。在您的示例中,
x=+y
可以解释为
x=y+x
(如您所述),但也可以解释为
x=(+x)
+
类似于
-1
中的否定操作)。这种模糊性会使语言的使用变得困难,尤其是当程序员想要使代码简短时。这也是为什么有些语言没有类似于前/后递增/递减运算符(例如Python)的原因。

有些语言允许定义新运算符和/或重载现有运算符(请参阅)


但是操作符和它们的使用应该是明确的。在您的示例中,
x=+y
可以解释为
x=y+x
(如您所述),但也可以解释为
x=(+x)
+
类似于
-1
中的否定操作)。这种模糊性会使语言的使用变得困难,尤其是当程序员想要使代码简短时。这也是为什么有些语言没有类似于前/后递增/递减运算符(例如Python)的原因。

它给出了完全相同的结果。我不确定你想要实现什么。不,在程序的逻辑方面是不一样的,假设你有两个变量,一个是用复杂函数构建的
var html
,另一个是要预先编写的
var title
。你想通过
html
no
title
var。我不想学习基于这个细节的语言,如果有支持这个的语言,我很感兴趣。不幸的是,我不能对你的答案投反对票。你编辑过的答案更有用,但其目的是简化语法。你想在服务器端还是客户端进行此操作?这一方面无关紧要。这里的重点是关于语法的逻辑,它给出了完全相同的结果。我不确定你想要实现什么。不,在程序的逻辑方面是不一样的,假设你有两个变量,一个是用复杂函数构建的
var html
,另一个是要预先编写的
var title
。你想通过
html
no
title
var。我不想学习基于这个细节的语言,如果有支持这个的语言,我很感兴趣。不幸的是,我不能对你的答案投反对票。你编辑过的答案更有用,但其目的是简化语法。你想在服务器端还是客户端进行此操作?这一方面无关紧要。这里的重点是关于语法的逻辑。
x=y+x
x=+y