运算符概念解析

运算符本身是为数据服务的

加减乘除是不是运算符?是,但运算符不只有加减乘除,就像是苹果,香蕉,猕猴桃都叫水果,但是水果并不是只有猕猴桃,还有西瓜。什么意思?

意思是有很多其他的字符也叫运算符。

一个很有意思的事情,水果的定义到底是什么?如果不深究,也许是充满水分的?但是香蕉好像没那么多水,也许是长在树上的?也不是,西瓜长在地上。能吃的?有些水果有毒,不能食用。

所以很难定义什么是水果,但是如果你爸妈问你要不要吃水果,你不会想到那些有毒的,没见过的水果,只会想到常见的那些。此时的水果含义可以认为是缩小化的,但在此时此刻水果的意义就是这样。

在你的世界里,你叫黄瓜水果完全可以,但有些人会说那是蔬菜,但真的不算吗?

水果,我们用几个条件去约束。可食用,味道好,长在地球上。

所以关运算符什么事?

因为如果想定义一个事物,就得给出这个事物的本质特征。

运算符的本质特征就是为了数据服务。

1+2=3;

一个问题,离开了数字,+号有意义吗?

var a=1;

var b=2;

var c;

c=a+b;

=的优先级为7,+的优先级为4;

=的结合性是从右到左,+的结合性是从左到右;

先不考虑上面两条,看看这个式子的运行顺序:

先计算a+b,然后把值给c,这是明面上的东西,但谁能说清楚计算机内部到底是如何进行的?知道真正的运行原理才是真的明白了,否则都是在结果上进行探究而已。

结合性到底是什么?

a+b,就这三个字符而言,我真的看不出来结合性发挥了什么作用。接着看,c=a+b,这个就是说把=号右边的结果给c,以=为分割线,可以把这个式子看成两部分,a+b和c。

想象一下自己的面前有两个篮子,左右各一个,ok,现在右边篮子里面有三个鸡蛋,然后我拿起三个鸡蛋放入左边篮子当中。

这个过程有什么特点?很简单,就是说我是在把右边篮子中的鸡蛋放入左边,而不是左边放入右边。记住,这不是废话,这是不可出错的步骤,虽然简单,但是就是这么重要。

所以结合性是什么?

应该这么思考,如果没有结合性会怎样?看一个式子:

c=d;

啥意思?没意思,没有意义。

所以,=号的实质和鸡蛋篮子的实质一样,它定义了一个动作:把右边篮子里的鸡蛋放到左边篮子当中。

所以,这一动作是从右往左的(更好玩的是,到底什么是左右?哈哈),代表着一种顺序。

所以结合性是什么?不知道

结合性的中文是什么意思?结合?代表着组合,一个事物与另一个事物进行联系,比方说“结合理论与实际”,结?打结,一种动作,合,也是一种动作,“合二为一”,所以结合的含义就是两件事物本身变得有联系了。

结合本身就是一种性质,所以叫结合性。

继续,三元运算符,?:

为什么叫三元?三个元素,就是三个东西。三元运算符指的是“本运算符要对三个元素动手!”

var a=2;

var b=(a==1)?1:2;

优先级和结合性:

==:从左向右,7级

?: :从右向左,13级

=:从右向左,14级

  1. 首先登场的是==,它关乎两个东西,a,1,拿左边篮子中的a去和右边篮子的1相比,结果是false;
  2. 其次登场的是?:,它先按照结果false去找到1,然后返回1这个值
  3. 最后登场的是=,右篮子鸡蛋放左边。

?:为什么是从右至左?

到此为止,先停一下,因为我错了。

你看,即便是花了很多功夫也不一定能理解这结合性到底是啥,说明我被误导了。

原文地址:https://www.cnblogs.com/flyover/p/14069834.html