吴忠躺衫网络科技有限公司

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

鴻蒙TypeScript入門學習第5天:【TypeScript 運算符】

jf_46214456 ? 2024-04-01 16:18 ? 次閱讀

1、TypeScript 運算符

運算符用于執行程序代碼運算,會針對一個以上操作數項目來進行運算。

考慮以下計算:

7 + 5 = 12復制

以上實例中 7、5 和 12 是操作數。

運算符 + 用于加值。

運算符 = 用于賦值。

TypeScript 主要包含以下幾種運算:

  • 算術運算符
  • 邏輯運算符
  • 關系運算符
  • 按位運算符
  • 賦值運算符
  • 三元/條件運算符
  • 字符串運算符
  • 類型運算符

2、算術運算符

假定 y=5 ,下面的表格解釋了這些算術運算符的操作:

運算符描述例子x 運算結果y 運算結果
+加法x=y+275
-減法x=y-235
*乘法x=y*2105
/除法x=y/22.55
%取模(余數)x=y%215
++自增x=++y66
x=y++56
--自減x=--y44
x=y--54

實例

使用 tsc 命令編譯以上代碼得到如下 JavaScript 代碼:

var num1 = 10; var num2 = 2; var res = 0; res = num1 + num2; console.log("加: " + res); res = num1 - num2; console.log("減: " + res); res = num1 * num2; console.log("乘: " + res); res = num1 / num2; console.log("除: " + res); res = num1 % num2; console.log("余數: " + res); num1++; console.log("num1 自增運算: " + num1); num2--; console.log("num2 自減運算: " + num2);

執行以上 JavaScript 代碼,輸出結果為:

加:        12
減: 8
乘:    20
除:   5
余數:   0
num1 自增運算: 11
num2 自減運算: 1

開始前熟悉鴻蒙文檔

鴻蒙OS開發更多內容↓點擊HarmonyOSOpenHarmony技術
鴻蒙技術文檔《鴻蒙NEXT星河版開發學習文檔》

搜狗高速瀏覽器截圖20240326151547.png

3、關系運算符

關系運算符用于計算結果是否為 true 或者 false。

x=5,下面的表格解釋了關系運算符的操作:

運算符描述比較返回值
==等于x==8false
x==5true
!=不等于x!=8true
>大于x>8false
<小于x<8true
>=大于或等于x>=8false
<=小于或等于x<=8true

實例

var num1:number = 10

var num2:number = 2

var res:number = 0

   

res = num1 + num2

console.log("加:  "+res);

res = num1 - num2;

console.log("減: "+res)

res = num1*num2

console.log("乘:    "+res)

res = num1/num2

console.log("除:   "+res)

   

res = num1%num2

console.log("余數:   "+res)

num1++

console.log("num1 自增運算: "+num1)

num2--

console.log("num2 自減運算: "+num2)復制
var num1:number = 5; var num2:number = 9; console.log("num1 的值為: "+num1); console.log("num2 的值為:"+num2); var res = num1 >num2 console.log("num1 大于n num2: "+res) res = num1< num2 console.log("num1 小于 num2: "+res) res = num1 >=num2 console.log("num1 大于或等于 num2: "+res) res = num1<=num2 console.log("num1 小于或等于 num2: "+res) res = num1==num2 console.log("num1 等于 num2: "+res) res = num1!=num2 console.log("num1 不等于 num2: "+res)復制

使用 tsc 命令編譯以上代碼得到如下 JavaScript 代碼:

var num1 = 5;

var num2 = 9;

console.log("num1 的值為: " + num1);

console.log("num2 的值為:" + num2);

var res = num1  > num2;

console.log("num1 大于n num2: " + res);

res = num1   num2;

console.log("num1 小于 num2: " + res);

res = num1  >= num2; console.log("num1 大于或等于 num2: " + res);

res = num1 <= num2;

console.log("num1 小于或等于 num2: " + res);

res = num1 == num2;

console.log("num1 等于 num2: " + res);

res = num1 != num2;

console.log("num1 不等于 num2: " + res);

執行以上 JavaScript 代碼,輸出結果為:復制
num1 的值為: 5
num2 的值為:9
num1 大于n num2: false
num1 小于 num2: true
num1 大于或等于  num2: false
num1 小于或等于 num2: true
num1 等于 num2: false
num1 不等于 num2: true復制


4、邏輯運算符

邏輯運算符用于測定變量或值之間的邏輯。

給定 x=6 以及 y=3,下表解釋了邏輯運算符:

運算符描述例子
&&and(x < 10 && y > 1) 為 true
!not!(x==y) 為 true

實例

var avg:number = 20;

var percentage:number = 90;

console.log("avg 值為: "+avg+" ,percentage 值為: "+percentage);

var res:boolean = ((avg >50)&&(percentage >80));

console.log("(avg >50)&&(percentage >80): ",res);

var res:boolean = ((avg >50)||(percentage >80));

console.log("(avg >50)||(percentage >80): ",res);

var res:boolean=!((avg >50)&&(percentage >80));

console.log("!((avg >50)&&(percentage >80)): ",res);復制

使用 tsc 命令編譯以上代碼得到如下 JavaScript 代碼:

var avg = 20;

var percentage = 90;

console.log("avg 值為: " + avg + " ,percentage 值為: " + percentage);

var res = ((avg > 50) && (percentage > 80));

console.log("(avg >50)&&(percentage >80): ", res);

var res = ((avg > 50) || (percentage > 80));

console.log("(avg >50)||(percentage >80): ", res);

var res = !((avg > 50) && (percentage > 80));

console.log("!((avg >50)&&(percentage >80)): ", res);復制

執行以上 JavaScript 代碼,輸出結果為:

avg 值為: 20 ,percentage 值為: 90
(avg >50)&&(percentage >80):  false
(avg >50)||(percentage >80):  true
!((avg >50)&&(percentage >80)):  true復制

5、短路運算符(&& 與 ||)

&& 與 || 運算符可用于組合表達式。 && 運算符只有在左右兩個表達式都為 true 時才返回 true。

考慮以下實例:

var a = 10 
var result = ( a< 10 && a >5)復制

以上實例中 a < 10 與 a > 5 是使用了 && 運算符的組合表達式,第一個表達式返回了 false,由于 && 運算需要兩個表達式都為 true,所以如果第一個為 false,就不再執行后面的判斷(a > 5 跳過計算),直接返回 false。

|| 運算符只要其中一個表達式為 true ,則該組合表達式就會返回 true。

考慮以下實例:

var a = 10 
var result = ( a >5 || a< 10)復制

以上實例中 a > 5 與 a < 10 是使用了 || 運算符的組合表達式,第一個表達式返回了 true,由于 || 組合運算只需要一個表達式為 true,所以如果第一個為 true,就不再執行后面的判斷(a < 10 跳過計算),直接返回 true。


6、位運算符

位操作是程序設計中對位模式按位或二進制數的一元和二元操作。

運算符描述例子類似于結果十進制
&AND,按位與處理兩個長度相同的二進制數,兩個相應的二進位都為 1,該位的結果值才為 1,否則為 0。x = 5 & 10101 & 000100011
OR,按位或處理兩個長度相同的二進制數,兩個相應的二進位中只要有一個為 1,該位的結果值為 1。x = 510101
~取反,取反是一元運算符,對一個二進制數的每一位執行邏輯反操作。使數字 1 成為 0,0 成為 1。x = ~ 5~01011010-6
^異或,按位異或運算,對等長二進制模式按位或二進制數的每一位執行邏輯異按位或操作。操作的結果是如果某位不同則該位為 1,否則該位為 0。x = 5 ^ 10101 ^ 000101004
<<左移,把 << 左邊的運算數的各二進位全部左移若干位,由 << 右邊的數指定移動的位數,高位丟棄,低位補 0。x = 5 << 10101 << 1101010
>>右移,把 >> 左邊的運算數的各二進位全部右移若干位,>> 右邊的數指定移動的位數。x = 5 >> 10101 >> 100102
>>>無符號右移,與有符號右移位類似,除了左邊一律使用0 補位。x = 2 >>> 10010 >>> 100011

實例

var a:number = 2; // 二進制 10

var b:number = 3; // 二進制 11

var result; result = (a & b);

console.log("(a & b) = > ",result) result = (a | b);

console.log("(a | b) = > ",result) result = (a ^ b);

console.log("(a ^ b) = > ",result); result = (~b);

console.log("(~b) = > ",result); result = (a   b);

console.log("(a < < b) = > ",result); result = (a  >> b);

console.log("(a > > b) = > ",result); result = (a  >> > 1);

console.log("(a > >> 1) = > ",result);復制

使用 tsc 命令編譯以上代碼得到如下 JavaScript 代碼:

var a = 2; // 二進制 10

var b = 3; // 二進制 11

var result; result = (a & b);

console.log("(a & b) = > ", result); result = (a | b);

console.log("(a | b) = > ", result); result = (a ^ b);

console.log("(a ^ b) = > ", result); result = (~b);

console.log("(~b) = > ", result); result = (a   b);

console.log("(a < < b) = > ", result); result = (a  >> b);

console.log("(a > > b) = > ", result); result = (a  >> > 1);

console.log("(a > >> 1) = > ", result);復制

執行以上 JavaScript 代碼,輸出結果為:

(a & b) = >  2
(a | b) = >  3
(a ^ b) = >  1
(~b) = >  -4
(a < < b) = >  16
(a > > b) = >  0
(a > >> 1) = >  1
復制

7、賦值運算符

賦值運算符用于給變量賦值。

給定 x=10y=5 ,下面的表格解釋了賦值運算符:

運算符例子實例x 值
= (賦值)x = yx = yx = 5
+= (先進行加運算后賦值)x += yx = x + yx = 15
-= (先進行減運算后賦值)x -= yx = x - yx = 5
*= (先進行乘運算后賦值)x *= yx = x * yx = 50
/= (先進行除運算后賦值)x /= yx = x / yx = 2

類似的邏輯運算符也可以與賦值運算符聯合使用:<<=, >>=, >>>=, &=, |= 與 ^=。

8、實例

var a: number = 12

var b:number = 10

a = b

console.log("a = b: "+a)

a += b

console.log("a+=b: "+a)

a -= b

console.log("a-=b: "+a)

a *= b

console.log("a*=b: "+a)

a /= b console.log("a/=b: "+a)

a %= b

console.log("a%=b: "+a)復制

使用 tsc 命令編譯以上代碼得到如下 JavaScript 代碼:

var a = 12;

var b = 10;

a = b;

console.log("a = b: " + a);

a += b;

console.log("a+=b: " + a);

a -= b;

console.log("a-=b: " + a);

a *= b;

console.log("a*=b: " + a);

a /= b;

console.log("a/=b: " + a);

a %= b;

console.log("a%=b: " + a);復制

執行以上 JavaScript 代碼,輸出結果為:

a = b: 10
a+=b: 20
a-=b: 10
a*=b: 100
a/=b: 10
a%=b: 0復制

9、三元運算符 (?)

三元運算有 3 個操作數,并且需要判斷布爾表達式的值。該運算符的主要是決定哪個值應該賦值給變量。

Test ? expr1 : expr2復制
  • Test ? 指定的條件語句
  • expr1 ? 如果條件語句 Test 返回 true 則返回該值
  • expr2 ? 如果條件語句 Test 返回 false 則返回該值

讓我們看下以下實例:

var num:number = -2 var result = num > 0 ? "大于 0" : "小于 0,或等于 0" console.log(result)復制

實例中用于判斷變量是否大于 0。

使用 tsc 命令編譯以上代碼得到如下 JavaScript 代碼:

var num = -2; var result = num > 0 ? "大于 0" : "小于 0,或等于 0"; console.log(result);復制

以上實例輸出結果如下:

小于 0,或等于 0復制

10、類型運算符

typeof 運算符

typeof 是一元運算符,返回操作數的數據類型。

查看以下實例:

var num = 12 console.log(typeof num); //輸出結果: number

使用 tsc 命令編譯以上代碼得到如下 JavaScript 代碼:

var num = 12; console.log(typeof num); //輸出結果: number復制

以上實例輸出結果如下:

number復制

11、instanceof

instanceof 運算符用于判斷對象是否為指定的類型,后面章節我們會具體介紹它。


12、其他運算符

負號運算符(-)

更改操作數的符號,查看以下實例:

var x:number = 4 var y = -x; console.log("x 值為: ",x); // 輸出結果 4 console.log("y 值為: ",y); // 輸出結果 -4復制

使用 tsc 命令編譯以上代碼得到如下 JavaScript 代碼:

var x = 4; var y = -x; console.log("x 值為: ", x); // 輸出結果 4 console.log("y 值為: ", y); // 輸出結果 -4復制

以上實例輸出結果如下:

x 值為:  4
y 值為:  -4復制

字符串運算符: 連接運算符 (+)

  • 運算符可以拼接兩個字符串,查看以下實例:

var msg:string = "RUNOOB"+".COM" console.log(msg)

使用 tsc 命令編譯以上代碼得到如下 JavaScript 代碼:

var msg = "RUNOOB" + ".COM"; console.log(msg);

以上實例輸出結果如下:

RUNOOB.COM
聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 鴻蒙系統
    +關注

    關注

    183

    文章

    2638

    瀏覽量

    66715
  • 鴻蒙
    +關注

    關注

    57

    文章

    2392

    瀏覽量

    43055
  • HarmonyOS
    +關注

    關注

    79

    文章

    1982

    瀏覽量

    30579
  • OpenHarmony
    +關注

    關注

    25

    文章

    3747

    瀏覽量

    16587
  • 鴻蒙OS
    +關注

    關注

    0

    文章

    190

    瀏覽量

    4537
收藏 人收藏

    評論

    相關推薦

    Verilog語法中運算符的用法

    verilog語法中使用以下兩個運算符可以簡化我們的位選擇代碼。
    的頭像 發表于 10-25 15:17 ?1282次閱讀
    Verilog語法中<b class='flag-5'>運算符</b>的用法

    c語言從右到左的運算符有哪些

    以下是一些主要的從右到左運算的C語言運算符: 函數調用運算符 ( () ):當您調用一個函數時,參數列表是從右到左進行求值的。 后置遞增運算符 ( ++ ) 和 后置遞減
    的頭像 發表于 08-20 11:39 ?1171次閱讀

    HarmonyOS Next原生應用開發-從TS到ArkTS的適配規則(十三)

    一、部分支持instanceof運算符 規則:arkts-instanceof-ref-types 級別:錯誤 在TypeScript中,instanceof運算符的左操作數的類型必須為any類型
    發表于 08-12 09:42

    HarmonyOS Next原生應用開發-從TS到ArkTS的適配規則(十二)

    一、一元運算符+、-和~僅適用于數值類型 規則:arkts-no-polymorphic-unops 級別:錯誤 ArkTS僅允許一元運算符用于數值類型,否則會發生編譯時錯誤。與TypeScript
    發表于 08-07 16:51

    鴻蒙TypeScript學習21:【聲明文件】

    TypeScript 作為 JavaScript 的超集,在開發過程中不可避免要引用其他第三方的 JavaScript 的庫。
    的頭像 發表于 04-19 15:02 ?657次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>TypeScript</b><b class='flag-5'>學習</b>21<b class='flag-5'>天</b>:【聲明文件】

    鴻蒙TypeScript學習20:【模塊】

    TypeScript 模塊的設計理念是可以更換的組織代碼。 模塊是在其自身的作用域里執行,并不是在全局作用域,這意味著定義在模塊里面的變量、函數和類等在模塊外部是不可見的,除非明確地使用 export 導出它們。類似地,我們必須通過 import 導入其他模塊導出的變量、函數、類等。
    的頭像 發表于 04-18 15:19 ?763次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>TypeScript</b><b class='flag-5'>學習</b><b class='flag-5'>第</b>20<b class='flag-5'>天</b>:【模塊】

    鴻蒙語言TypeScript學習18:【泛型】

    泛型(Generics)是一種編程語言特性,允許在定義函數、類、接口等時使用占位來表示類型,而不是具體的類型。
    的頭像 發表于 04-16 14:56 ?418次閱讀
    <b class='flag-5'>鴻蒙</b>語言<b class='flag-5'>TypeScript</b><b class='flag-5'>學習</b><b class='flag-5'>第</b>18<b class='flag-5'>天</b>:【泛型】

    鴻蒙語言TypeScript學習16:【類】

    TypeScript 支持面向對象的所有特性,比如 類、接口等。
    的頭像 發表于 04-15 09:29 ?1101次閱讀
    <b class='flag-5'>鴻蒙</b>語言<b class='flag-5'>TypeScript</b><b class='flag-5'>學習</b><b class='flag-5'>第</b>16<b class='flag-5'>天</b>:【類】

    鴻蒙TypeScript 開發學習9:【TypeScript Number】

    TypeScript 與 JavaScript 類似,支持 Number 對象。 Number 對象是原始數值的包裝對象。
    的頭像 發表于 04-07 18:02 ?837次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>TypeScript</b> 開發<b class='flag-5'>學習</b><b class='flag-5'>第</b>9<b class='flag-5'>天</b>:【<b class='flag-5'>TypeScript</b> Number】

    鴻蒙TypeScript入門學習8:【TypeScript 函數】

    函數是一組一起執行一個任務的語句。 您可以把代碼劃分到不同的函數中。如何劃分代碼到不同的函數中是由您來決定的,但在邏輯上,劃分通常是根據每個函數執行一個特定的任務來進行的。
    的頭像 發表于 04-03 14:54 ?464次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>TypeScript</b><b class='flag-5'>入門</b><b class='flag-5'>學習</b><b class='flag-5'>第</b>8<b class='flag-5'>天</b>:【<b class='flag-5'>TypeScript</b> 函數】

    鴻蒙TypeScript學習7:【TypeScript 循環】

    有的時候,我們可能需要多次執行同一塊代碼。一般情況下,語句是按順序執行的:函數中的第一個語句先執行,接著是第二個語句,依此類推。 編程語言提供了更為復雜執行路徑的多種控制結構。
    的頭像 發表于 04-02 14:28 ?905次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>TypeScript</b><b class='flag-5'>學習</b><b class='flag-5'>第</b>7<b class='flag-5'>天</b>:【<b class='flag-5'>TypeScript</b> 循環】

    鴻蒙TypeScript入門學習6:【條件語句】

    條件語句用于基于不同的條件來執行不同的動作。 TypeScript 條件語句是通過一條或多條語句的執行結果(True 或 False)來決定執行的代碼塊。
    的頭像 發表于 04-01 13:51 ?799次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>TypeScript</b><b class='flag-5'>入門</b><b class='flag-5'>學習</b><b class='flag-5'>第</b>6<b class='flag-5'>天</b>:【條件語句】

    鴻蒙TypeScript入門學習4:【TS變量聲明】

    變量是一種使用方便的占位,用于引用計算機內存地址。 我們可以把變量看做存儲數據的容器。
    的頭像 發表于 03-29 14:49 ?1478次閱讀

    鴻蒙TypeScript開發入門學習3:【TS基礎類型】

    任意值是 TypeScript 針對編程時類型不明確的變量使用的一種數據類型,它常用于以下三種情況。
    的頭像 發表于 03-28 15:02 ?579次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>TypeScript</b>開發<b class='flag-5'>入門</b><b class='flag-5'>學習</b><b class='flag-5'>第</b>3<b class='flag-5'>天</b>:【TS基礎類型】

    鴻蒙TypeScript入門學習2TypeScript安裝】

    本文介紹 TypeScript 環境的安裝。 我們需要使用到 npm 工具安裝,如果你還不了解 npm,可以參考我之前文檔。
    的頭像 發表于 03-27 15:22 ?546次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>TypeScript</b><b class='flag-5'>入門</b><b class='flag-5'>學習</b><b class='flag-5'>第</b>2<b class='flag-5'>天</b>【<b class='flag-5'>TypeScript</b>安裝】
    莱州市| 单张百家乐论坛| 威尼斯人娱乐城备用地址| 巴彦淖尔市| 百家乐稳中一注法| 足球竞彩网| 百家乐官网筹码托盘| 大发888游戏官方下载| 百家乐官网赢输| 做生意布局风水| 竞彩足球推荐| 百家乐星级游戏| E乐博| 百家乐试玩活动| 黄金城娱乐城| 玩百家乐怎么才能赢| 绥化市| 百家乐哪里可以玩| 百家乐官网博彩优惠论坛| 百家乐网络赌城| 百家乐官网等投注网改单| 金矿百家乐的玩法技巧和规则| 明升| 真人百家乐代理分成| 百家乐官网多少点数算赢| 蓝盾百家乐平台| 永利百家乐官网娱乐平台| 德州扑克视频| 做生意用的 风水上最好的尺寸有| 金宝博滚球| 百家乐赔率计算| 百家乐官网科学| 香港六合彩总公司| 永利高百家乐信誉| 大发888现金存款| 百家乐tt娱乐城| 伊金霍洛旗| 博彩百家乐组选六六组| 三国百家乐官网的玩法技巧和规则| 皇冠网投| 功夫百家乐的玩法技巧和规则 |