重學JS-001 --- JavaScript算法與數據結構(一)JavaScript 基礎知識

文章目錄

  • 變量
    • 變量命名規則
    • 變量命名
    • let vs const
    • 變量使用范圍
  • 賦值 =
  • 控制臺輸出
  • 運算符
    • ++
    • --
    • ==
    • ===
    • !==
  • 注釋
  • 轉義字符
  • 數據類型 7種
    • 原始數據類型
      • 1. string??
      • 2. number??
      • 3. ??boolean??
      • 4. null??
      • 5. undefined??
      • 6. ??symbol??(ES6 新增)
      • 7. bigint??(ES2020 新增)
    • 引用數據類型
      • 8. object??
      • 9. array??
      • 10. function??
      • 11. 其他內置對象??
  • 數組
    • 數組訪問
    • 數組方法
  • 函數
    • 函數定義
    • 函數調用
    • 函數返回
    • 函數返回值
    • 參數
    • for
    • for ... of
    • while
    • if

JavaScript 是一門用以驅動網頁的編程語言。JavaScript 最常用于編寫邏輯而不是標記。

變量

變量是編程中最重要的概念之一。
一個變量指向一個用來存儲值的特定內存地址。 變量被賦予一個名稱,可以在整個代碼中用來訪問該值。


聲明一個變量意味著為它命名。
在 JavaScript 中,通常使用 let 關鍵字來實現。

變量命名規則

變量的命名遵循特定的規則:名稱可以包含字母、數字、美元符號以及下劃線,但是不能包含空格,且一定不能以數字開頭


當重新賦值一個變量時,不需要 再使用 let 關鍵字。


注意: 在 JavaScript 中通常以分號來結束語句 。

變量命名

當變量名超過一個單詞時,對于如何將單詞大寫,有特定的命名約定。
在 JavaScript 中,使用的約定是 駝峰式命名法

駝峰式大小寫是指名稱中的第一個單詞全部小寫,但后續單詞均采用首字母大寫。

還可以將一個變量的值分配給另一個變量。 當變量位于全局范圍內時,函數可以在其定義中訪問它。

let vs const

使用 let 關鍵字聲明變量時,可以對其進行重新賦值。
const 變量很特殊。


首先,const 變量不能像 let 變量那樣被重新分配。const 變量也不能未初始化。

變量使用范圍

JavaScript 中的變量在特定的范圍內可用。
換句話說,變量的聲明位置決定了它在代碼中的使用位置。


第一個范圍是全局范圍。 在任何“塊”(例如函數或 for 循環)之外聲明的變量都位于全局范圍內。


變量也可以在函數內部聲明。 這些變量被認為處于局部作用域或塊級作用域內。
在函數內部聲明的變量只能在該函數內部使用。
如果你嘗試在函數外部訪問它,則會收到引用錯誤。

賦值 =

賦值運算符 = 來賦值。


在聲明變量的同時給它賦值,叫做初始化
當你聲明一個變量但沒有初始化它時,該變量被視為未初始化
未初始化變量的默認值是 undefined。 這是一種特殊的數據類型,表示尚未定義的值。

控制臺輸出

console(控制臺指令)允許打印并查看 JavaScript 的輸出。
使用 console.log() 來向控制臺發送信息。

運算符

++

自增運算符 ++ ,該運算符將變量的值增加 1,更新該變量的賦值。

自減運算符 – ,該運算符將變量的值減少 1。

==

相等運算符 == 用于檢查兩個值是否相等。
相等運算符可能會導致 JavaScript 中出現一些奇怪的行為。 例如,“0” == 0 為真,即使一個是字符串,一個是數字。

===

嚴格相等運算符 === 用于檢查兩個值是否相等且具有相同的類型。 一般來說,這是你應該始終使用的相等運算符。 使用嚴格相等運算符時,“0”
=== 0 變為假,因為雖然它們可能具

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/917257.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/917257.shtml
英文地址,請注明出處:http://en.pswp.cn/news/917257.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

MySQL數據閃回工具my2sql的使用

場景: 當你或者其它人員誤操作數據庫不小心刪除或者更新了一批數據,但是是當時又沒事先備份時,你可以 用這個 my2sql工具快速幫你找回數據。就是如此的絲滑。但是要注意的是只限于dml語句,所以我們在操作數據庫前必需先備份哦&…

9.1無法恢復的錯誤與 panic!

無法恢復的錯誤與 panic! 有時你的代碼中會發生嚴重問題,而你無能為力。在這些情況下,Rust 提供了 panic! 宏。實際上,有兩種方式會導致 panic:一種是執行某個操作使代碼產生 panic(例如訪問數組越界)&…

分享低功耗單火線開關語音識別方案

在眾多老舊建筑和常規家居環境里,單火線布線是主流方式。單火線語音識別芯片方案通過研發和應用特殊的單火線語音識別芯片,實現設備在單火線供電條件下穩定運行,并精準識別語音指令,為智能家居、智能照明等領域帶來便捷的語音控制…

如何在Windows操作系統上通過conda 安裝 MDAnalysis

MDAnalysis 是一個開源的 Python 庫,旨在提供一個高效且靈活的方式來分析和處理分子動力學(MD)模擬數據。它可以從不同的文件格式中讀取模擬軌跡和結構數據,進行復雜的數據處理和分析,廣泛應用于生物物理學、化學、材料科學等領域。 一、創建虛擬環境 為了能夠順利安裝,減…

實用PDF演示解決方案

它打破了傳統閱 讀模式,讓PDF文檔也能像PPT一樣流暢播放,特別適合匯報、講解等展示場景。它是綠色單文件版,無需安裝,雙擊紅色圖標即點即用。運行后第一件事,建議把界面語言切換成中文,操作更順手。導入PDF…

VS Code中如何關閉Github Copilot

點擊頂部搜索欄后面的Copilot圖標,在下拉菜單中選擇Hide Copilot。在彈出的提示框中,點擊Hide Copilot按鈕就可以了。

MySQL學習從零開始--第六部分

Binlog是什么?有哪幾種格式?推薦使用哪種,為什么 Binlog是什么 Binlog二進制日志是MySQL Server層記錄所有更改數據庫內容的操作日志的二進制文件,如操作UPDATE,DELETE,INSERTBinlog不記錄SELECT,SHOW等查詢操作使主從…

走進computed,了解computed的前世今生

computed(計算屬性)并不是vue獨創的,而是源自計算機科學和響應式編程的長期發展 計算理論的奠基: 函數式編程的純函數思想:計算屬性的核心特征(無副作用、依賴輸入確定輸出)直接來源于函數式編程…

Java 23 新特性解析與代碼示例

Java 23 新特性解析與代碼示例 文章目錄Java 23 新特性解析與代碼示例1. 引言2. 正式特性2.1. Markdown文檔注釋 (JEP 467)2.2. 廢棄sun.misc.Unsafe的內存訪問方法以移除 (JEP 471)2.3. ZGC:默認啟用代際模式 (JEP 474)3. 預覽特性3.1. 原始類型在模式、instanceof…

spring boot + mybatis + mysql 只有一個實體類的demo

使用MyBatis進行數據庫操作,配置簡單。主要演示了mybatis可以不用只使用方法名來對應mapper.java和mapper.xml。 目錄結構 pom.xml src/ ├── main/ │ ├── java/ │ │ └── com/ │ │ └── springbootjdbcweb/ │ │ └── …

iRemovalPro完美繞iCloud插卡打電話,A12+支持iOS 18.1.1

iRemovalPro 專業工具全解析與操作指南 (支持iOS 14.0 - 16.6.1,A7-A15芯片設備) 👉下載地址見文末 iRemoval Pro iRemoval 專業版是一款來自外國安全研究員的工具,用來幫助一些人因為忘記自己的ID或者密碼&#xff0c…

安卓SELinux策略語法

目錄前言一、 通用AV規則語法1.1 allow source target:class permissions;1.2 neverallow source target:class permissions;二、type三、attribute四、typeattribute五、alias六、typealias七、init_daemon_domain7.1 init_daemon_domain 宏概述7.2 宏展開與實現7.2.1 展開后規…

vscode cursor配置php的debug,docker里面debug

VSCode PHP調試配置指南 概述 本文介紹如何在VSCode中配置PHP調試環境,包括本地和Docker環境。 前置要求 VSCodePHP 7.0Xdebug擴展PHP Debug VSCode擴展 本地調試配置 1. 安裝Xdebug # Ubuntu/Debian sudo apt-get install php-xdebug# MacOS brew install p…

elk部署加日志收集

清華大學鏡像源地址:Index of /elasticstack/8.x/yum/8.13.2/ | 清華大學開源軟件鏡像站 | Tsinghua Open Source Mirror 一、elasticsearch 1.安裝 rpm -ivh elastic-agent-8.13.2-x86_64.rpm 2.修改配置 vim /etc/elasticsearch/elasticsearch.yml 修改如下&…

dify 升級1.7.1 插件無法下載依賴

dify 升級1.7.1 插件無法下載依賴 1. 安裝通義千問插件,各種報錯; 使用下面命令查看docker 鏡像日志 docker logs -f --tail100 docker-plugin_daemon-1 2025/08/01 07:42:21 full_duplex.go:59: [INFO]init environment for plugin langgenius/tongyi…

linux中簡易云盤系統項目實戰:基于 TCP協議的 Socket 通信、json數據交換、MD5文件區別與多用戶文件管理實現

📋 項目介紹 本項目是一個基于Linux環境的簡易云盤系統,采用C/S(客戶端/服務器)架構,實現了類似百度網盤的基本功能。系統通過TCP Socket進行網絡通信,使用JSON格式進行數據交換,利用SQLite3數據…

linux中posix消息隊列的使用記錄

在linux中使用posix中的消息隊列時遇到了一個問題,就是在發送消息時,如果隊列滿了,mq_send接口會一直阻塞,經過查找資料后才發現,該接口默認是阻塞的,也就是說,當隊列滿了以后,接口會…

01 基于sklearn的機械學習-機械學習的分類、sklearn的安裝、sklearn數據集及數據集的劃分、特征工程(特征提取與無量綱化、特征降維)

文章目錄機械學習機械學習分類1. 監督學習2. 半監督學習3. 無監督學習4. 強化學習機械學習的項目開發步驟scikit-learn1 scikit-learn安裝2 sklearn數據集1. sklearn 玩具數據集鳶尾花數據集糖尿病數據集葡萄酒數據集2. sklearn現實世界數據集20 新聞組數據集3. 數據集的劃分特…

n8n】n8n的基礎概念

以下是為初學者整理的 n8n 基本概念總結,幫助快速理解核心功能和使用邏輯:1. 工作流(Workflow)核心單元:n8n的一切操作基于工作流,代表一個自動化流程。組成:由多個節點(Nodes&#…

機器學習基礎-matplotlib

一、相關知識點二、plotfrom pylab import mpl # 設置顯示中文字體 mpl.rcParams["font.sans-serif"] ["SimHei"] # 設置正常顯示符號 mpl.rcParams["axes.unicode_minus"] False #%%#%% import matplotlib.pyplot as plt import random# 畫出…