所谓的运算子就是就是一些符号,运算广义来说就是对资料做的任何动作。
平常生活中的加减乘除是一种运算,不过在程序里的运算是泛指任何对资料做的动作。
运算子的类型很多,依照性质分类,大概分下面几种
指派运算子会根据 =
右边的值,为左边赋予一个值
例如
var a=1;
console.log(a); // 印出 1
var b=a;
console.log(b); // 印出 1,右边是变数也可以使用指派运算子
只要右边可以吐出一个值,就可以使用 =
放进左边。
下面的程序码,可能刚学的时候会很奇怪,因为平常我们已经习惯阅读时,从左边阅读到右边
var n=2;
n=n+1;
console.log(n); // 印出 3
第一行:n 赋值为 2
第二行:将右边 n 加一再放进左边的 n
最後 n 等於 3
我们很常会将变数的资料做加法,并且马上放进原本的变数里面
有个比较简短的写法可以这样子写。
var n=2;
n+=1;
console.log(n) // 印出3
其实 n=n+1
跟 n+=1
是一样的
就是将原来的变数做加法,再将计算完的资料放进原来的变数里面。
资料型态是字串的情形也很常使用
var word="Today is ";
word+="good day";
console.log(word); // "Today is good day"
基本的有,加减乘除
var n1=1+1;
var n2=1-1;
var n3=2*2;
var n4=6/3;
console.log(n1); // 2
console.log(n2); // 0
console.log(n3); // 4
console.log(n4); // 2
加法有些比较特别的状况
家法还可以对字串使用
var p="我";
var j="吃饭";
console.log(p+j); // 我吃饭
或者字串加数字
console.log(100+"100"); // 100100
console.log(100+"ABC"); // 100ABC
其实,加法是算术运算子,两笔资料用上加法的话,电脑就会进行运算
Javascript 有一个特性,有「自动转型」这个特性,就是当两笔资料要进行运算,当这两笔资料的资料型态不一样,他会自动将资料转成一样的资料型态再做运算。
而其他的程序语言,可能资料型态不一样就无法做运算了,所以别的程序语言想将不同的资料型态做运算,就要多打额外的指令去操作。
这有优点也有缺点。
优点是只要熟记自动转型的规则,就可以用比较短的语法完成程序。
缺点是只要不熟转型的规则,资料就会变成预期以外的值。例如
var n1;
var n2;
var n3;
n1=100;
// 其他的程序码
// 其他的程序码
n2=n1+"100";
// 其他的程序码
// 其他的程序码
n3=n2*2
console.log(n3) // 200200
可能 n2 的地方,只是想要加数字 100 ,可是打错,打成字串 100。
当我们看到结果 n3 的资料变成 200200,就会很困惑,这不是我们要的结果。
而 n3 与 n2 之间隔了很多行,我们要再一堆程序码找问题在哪里就会比较困难。
简介: 静态档包含css、js以及图档。 建立静态档 按照下方结构建立static资料夹,以及css...
什麽是 Interceptor? 中文名称为拦截器,受到 剖面导向程序设计 (Aspect Orie...
开始上班後,从来没放过这麽长的假,而且还没出门旅行。给自己的每天的例行功课就是看书跟写日记,昨天把...
工程师太师了: 第9话 杂记: 最近在泡咖啡 被同事问说: 你一天都喝几杯咖啡阿? 我的回答:我大概...
EKS试炼 今日会撰写YAML来建置EKS Cluster并使用eksctl执行建置,以及Lens去...