JS操作符、控制流程、迴圈、字元串/數組方法

来源:https://www.cnblogs.com/jiyu-hlzy/archive/2019/12/12/12031228.html
-Advertisement-
Play Games

操作符 算術運算符:+ 、 、 、 / 、 %、++、 賦值運算符:= 、+=、 =、 =、/=、%= 比較運算符: 、 =、 流程式控制制 以下在進行判斷的時候為假 0 null undefined NaN "" 空字元串 false if else switch 迴圈 for迴圈 while迴圈 d ...


操作符

  • 算術運算符:+ 、- 、 * 、 / 、 %、++、--
  • 賦值運算符:= 、+=、-=、 *=、/=、%=
  • 比較運算符:>、>=、<、<=、!=、==、===(全等,數據類型也會去比較)
  • 邏輯運算符:&&(與)、||(或)、! (非)

流程式控制制

  • 以下在進行判斷的時候為假
    • 0
    • null
    • undefined
    • NaN
    • "" 空字元串
    • false
  • if else
if (...) {
    ...
} else if(...) {
    ...
} else {
    ...
}
// 三目運算符
name ? console.log("存在:"+name) :console.log("不存在")
//多條件下的三目運算符
0 ? console.log(1) : 3>4 ? console.log(2) : console.log(3)
  • switch
var choice = 1;
switch (choice) {
    case 1:
        document.write(1);
        //不寫break時,當滿足條件是,不再判斷,會執行後面所有語句
        break;
    case 2:
        document.write(2);
        break;
    default:
        document.write("都不滿足");
}


迴圈

  • for迴圈
//九九乘法表
for (i=1; i<=9; i++){
    for(j=1; j<=i; j++){
        document.write(j+"*"+i+"="+i*j+'&emsp;');
    }
    document.write("<br>");
}
  • while迴圈
while (true){
    document.write(1);
    break;
}
  • do while迴圈
do{
    document.write(1);
}while (1<0)


字元串方法

  • 長度:length
  • 下標: [] /charAt()
  • 替換:replace()
  • 分割:split()
  • 大寫:toUpperCase()
  • 小寫: toLowerCase()
  • 索引:indexOf()
  • 截取:substring()
  • 切割:slice()
var str_test = "Which Love Love";
document.write(str_test.length+'<br>');//length
document.write(str_test[0]+'<br>');//[]
document.write(str_test.charAt(1)+'<br>');//charAt()
document.write(str_test.replace("Love","===")+'<br>');//replace()
document.write(str_test.split(' ')+'<br>');//split()
document.write(str_test.toUpperCase()+'<br>');//toUpperCase()
document.write(str_test.toLowerCase()+'<br>');//toLowerCase()
document.write(str_test.indexOf('L',8)+'<br>');//indexOf()
//slice()不會自動比較參數的大小
document.write(str_test.slice(0,5)+'<br>');//slice()
//substring()會自動比較參數的大小
document.write(str_test.substring(5,0)+'<br>');//substring()


數組方法

  • 長度:length
  • 下標: [ ]
  • 追加:push()
  • 添加:unshift()
  • 後刪:pop()
  • 前刪:shift()
  • 索引:indexOf()
  • 切片: slice()
  • 替換:splice()
  • 拼接:join()
  • 排序:sort()
  • 反向:reverse()
  • 連接:concat()
var arr = ['one','two','three','four','five'];
document.write(arr.length+'<br>');//length
document.write(arr[0]+'<br>');//[]
arr.push('six');//push()
arr.unshift('zero');//Unshift(),從前面添加
arr.pop();//pop()
arr.shift();//shift()
document.write(arr.indexOf('two')+'<br>');//indexOf()
document.write(arr.slice(0,3)+'<br>');//slice()
//將新的值,替換從下標為1的開始的兩個值
document.write(arr.splice(1,2,'a','b','c','d')+'<br>');//splice()
document.write(arr.join('==')+'<br>');//join()
document.write(arr.sort()+'<br>');//sort()
document.write(arr.reverse()+'<br>');//reverse()
var arr_temp1=[1,2];
var arr_temp2=[3,4];
document.write(arr.concat(arr_temp2,arr_temp1)+'<br>');//concat()


其它方法

  • 轉為字元串:toString()
  • 數字四捨五入:toFixed()
  • 判斷NaN:isNaN()
  • 判斷數組:Array.isArray()
  • 整數:parseInt()
  • 浮點數: parseFlost()
  • 數字:Number()
var num = 12.8;
var a ='0x1234';
var b ='343.324';
document.write(typeof toString(num)+'<br>');//toString()
document.write(num.toFixed()+'<br>');//toFixed()
document.write(isNaN(num)+'<br>');//isNaN()
document.write(Array.isArray(num)+'<br>');//isArray()
document.write(parseInt(a)+'<br>');//parseInt()
document.write(parseFloat(b)+'<br>');//parseFloat()
document.write(Number(b)+'<br>');//Number()





您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • convert(char(10),convert(datetime, H.TOEX_FIN_REJECT_TIMR)+1,20), ...
  • 在安卓開發當中,頂部的狀態欄很多時候是和我們自己所設定的安卓背景顏色不相同的,看起來就十分彆扭,就如同下圖所示,狀態欄是深綠色,我們的背景卻是一個十分好看的漸變顏色: 在使用沉浸式狀態欄之後的界面如下: 如何將頂部的狀態欄設置成透明的呢,我們可以在主活動的 onCreate() 方法當中輸入以下代碼 ...
  • flutter 是由谷歌發佈的一個全新的響應式、跨平臺、高性能的移動開發框架,可以快速在iOS和Android上構建高質量的原生用戶界面。 框架特點 快速開發:Flutter的熱重載可以快速地進行測試、構建UI、添加功能並更快地修複錯誤。富有表現力,漂亮的用戶界面:自帶的Material Desig ...
  • 一、先查殼,再反編譯看驗證首先打開.apk文件==>反編譯apk(dex/配置文件/資源文件(apk反編譯失敗)>修改關鍵文件實現自己的目的>重新打包簽名(無法重新打包)==>apk安裝後無法運行。 反編譯工具:apktool dex=>.smalidex2jar .dex=>.jar=>.clas ...
  • 在每一個圖片的某一側都可以展示出一個三角形的邊框視圖,就是咱們的三角形標簽視圖。這個視圖在電商類APP當中比較常用,使用過ebay的同學應該都還記得有些商品的左上角或者右上角都會顯示一個三角形的邊框,用於給人一個直觀的商品正在促銷,或者剛剛上線的直觀感受。我們可以看看實現後的效果如下: 在真實的AP ...
  • 案例:無縫的輪播圖 w <!DOCTYPE html> <html> <head lang="en"> <meta charset="UTF-8"> <title></title> <style> * { margin: 0; padding: 0; } ul { list-style: none; ...
  • 案例 左右焦點輪播圖(tb) <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title></title> <style> body, ul, ol, li, img { margin: 0; padding: 0; l ...
  • 後臺管理系統中比較常見的佈局是左邊菜單欄,右邊tab切換欄,但是一般的tab組件不包含tab頁過多的切換問題的,所以需要個性化實現,本文的實現方案是滑動滑鼠滾輪綁定tab達到切換的效果,先上一個動態圖看下效果 tab滑動欄佈局代碼如下 <div class="tabmain" id="tabmain ...
一周排行
    -Advertisement-
    Play Games
  • .Net8.0 Blazor Hybird 桌面端 (WPF/Winform) 實測可以完整運行在 win7sp1/win10/win11. 如果用其他工具打包,還可以運行在mac/linux下, 傳送門BlazorHybrid 發佈為無依賴包方式 安裝 WebView2Runtime 1.57 M ...
  • 目錄前言PostgreSql安裝測試額外Nuget安裝Person.cs模擬運行Navicate連postgresql解決方案Garnet為什麼要選擇Garnet而不是RedisRedis不再開源Windows版的Redis是由微軟維護的Windows Redis版本老舊,後續可能不再更新Garne ...
  • C#TMS系統代碼-聯表報表學習 領導被裁了之後很快就有人上任了,幾乎是無縫銜接,很難讓我不想到這早就決定好了。我的職責沒有任何變化。感受下來這個系統封裝程度很高,我只要會調用方法就行。這個系統交付之後不會有太多問題,更多應該是做小需求,有大的開發任務應該也是第二期的事,嗯?怎麼感覺我變成運維了?而 ...
  • 我在隨筆《EAV模型(實體-屬性-值)的設計和低代碼的處理方案(1)》中介紹了一些基本的EAV模型設計知識和基於Winform場景下低代碼(或者說無代碼)的一些實現思路,在本篇隨筆中,我們來分析一下這種針對通用業務,且只需定義就能構建業務模塊存儲和界面的解決方案,其中的數據查詢處理的操作。 ...
  • 對某個遠程伺服器啟用和設置NTP服務(Windows系統) 打開註冊表 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\TimeProviders\NtpServer 將 Enabled 的值設置為 1,這將啟用NTP伺服器功 ...
  • title: Django信號與擴展:深入理解與實踐 date: 2024/5/15 22:40:52 updated: 2024/5/15 22:40:52 categories: 後端開發 tags: Django 信號 松耦合 觀察者 擴展 安全 性能 第一部分:Django信號基礎 Djan ...
  • 使用xadmin2遇到的問題&解決 環境配置: 使用的模塊版本: 關聯的包 Django 3.2.15 mysqlclient 2.2.4 xadmin 2.0.1 django-crispy-forms >= 1.6.0 django-import-export >= 0.5.1 django-r ...
  • 今天我打算整點兒不一樣的內容,通過之前學習的TransformerMap和LazyMap鏈,想搞點不一樣的,所以我關註了另外一條鏈DefaultedMap鏈,主要調用鏈為: 調用鏈詳細描述: ObjectInputStream.readObject() DefaultedMap.readObject ...
  • 後端應用級開發者該如何擁抱 AI GC?就是在這樣的一個大的浪潮下,我們的傳統的應用級開發者。我們該如何選擇職業或者是如何去快速轉型,跟上這樣的一個行業的一個浪潮? 0 AI金字塔模型 越往上它的整個難度就是職業機會也好,或者說是整個的這個運作也好,它的難度會越大,然後越往下機會就會越多,所以這是一 ...
  • @Autowired是Spring框架提供的註解,@Resource是Java EE 5規範提供的註解。 @Autowired預設按照類型自動裝配,而@Resource預設按照名稱自動裝配。 @Autowired支持@Qualifier註解來指定裝配哪一個具有相同類型的bean,而@Resourc... ...