主頁 > 企業開發 > 2021年3月-第03階段-前端基礎-JavaScript基礎語法-JavaScript基礎第01天

2021年3月-第03階段-前端基礎-JavaScript基礎語法-JavaScript基礎第01天

2022-09-19 09:56:15 企業開發

1 - 編程語言

1.1 編程

  • 編程:
    就是讓計算機為解決某個問題而使用某種程式設計語言撰寫程式代碼,并最終得到結果的程序,
  • 計算機程式:
    就是計算機所執行的一系列的指令集合,而程式全部都是用我們所掌握的語言來撰寫的,所以人們要控制計算機一定要通過計算機語言向計算機發出命令,

1.2 計算機語言

  • 計算機語言指用于人與計算機之間通訊的語言,它是人與計算機之間傳遞資訊的媒介,

  • 計算機語言的種類非常的多,總的來說可以分成機器語言,匯編語言和高級語言三大類,

  • 實際上計算機最終所執行的都是 機器語言,它是由“0”和“1”組成的二進制數,二進制是計算機語言的基礎,

計算機二進制

1.3 編程語言

編程語言: 可以通過類似于人類語言的“語言”來控制計算機,讓計算機為我們做事情,這樣的語言就叫做編程語言(Programming Language),編程語言是用來控制計算機的一系列指令,它有固定的格式和詞匯(不同編程語言的格式和詞匯不一樣),必須遵守,如今通用的編程語言有兩種形式:匯編語言和高級語言,

語言型別 說明
匯編語言 匯編語言和機器語言實質是相同的,都是直接對硬體操作,只不過指令采用了英文縮寫的識別符號,容易識別和記憶,
高級語言 高級語言主要是相對于低級語言而言,它并不是特指某一種具體的語言,而是包括了很多編程語言,常用的有C語言、C++、Java、C#、Python、PHP、JavaScript、Go語言、Objective-C、Swift等,

高級語言

1.4 翻譯器

高級語言所編制的程式不能直接被計算機識別,必須經過轉換才能被執行,為此,我們需要一個翻譯器,翻譯器可以將我們所撰寫的源代碼轉換為機器語言,這也被稱為二進制化,

翻譯器

1.5 編程語言和標記語言區別

語言 說明
編程語言 編程語言有很強的邏輯和行為能力,在編程語言里, 你會看到很多 if else 、for 、while等具有邏輯性和行為能力的指令,這是主動的,
標記語言 標記語言(html)不用于向計算機發出指令,常用于格式化和鏈接,標記語言的存在是用來被讀取的, 他是被動的,

總結

1. 計算機可以幫助人類解決某些問題
2. 程式員利用編程語言撰寫程式發出指令控制計算機來實作這些任務
3. 編程語言有機器語言、匯編語言、高級語言
4. 高級語言需要一個翻譯器轉換為計算機識別的機器語言
5. 編程語言是主動的有很強的邏輯性

2 - 計算機基礎

2.1 計算機組成

計算機組成

計算機組成

2.2 資料存盤

1. 計算機內部使用二進制 0 和 1來表示資料,
2. 所有資料,包括檔案、圖片等最終都是以二進制資料(0 和 1)的形式存放在硬碟中的,
3. 所有程式,包括作業系統,本質都是各種資料,也以二進制資料的形式存放在硬碟中,平時我們所說的安裝軟體,其實就是把程式檔案復制到硬碟中,
4. 硬碟、記憶體都是保存的二進制資料,

2.3 資料存盤單位

大小關系:bit < byte < kb < GB < TB<.....
  • 位(bit): 1bit 可以保存一個 0 或者 1 (最小的存盤單位)

  • 位元組(Byte):1B = 8b

  • 千位元組(KB):1KB = 1024B

  • 兆位元組(MB):1MB = 1024KB

  • 吉位元組(GB): 1GB = 1024MB

  • 太位元組(TB): 1TB = 1024GB

2.4 程式運行

程式執行程序

計算機運行軟體的程序:
1. 打開某個程式時,先從硬碟中把程式的代碼加載到記憶體中
2. CPU執行記憶體中的代碼
   注意:之所以要記憶體的一個重要原因,是因為 cpu運行太快了,如果只從硬碟中讀資料,會浪費cpu性能,所以,才使用存取速度更快的記憶體來保存運行時的資料,(記憶體是電,硬碟是機械)

3 - 初始JavaScript

3.1 JavaScript 是什么

JavaScript

  • JavaScript 是世界上最流行的語言之一,是一種運行在客戶端的腳本語言 (Script 是腳本的意思)

  • 腳本語言:不需要編譯,運行程序中由 js 解釋器( js 引擎)逐行來進行解釋并執行

  • 現在也可以基于 Node.js 技術進行服務器端編程

客戶端

3.2 JavaScript的作用

  • 表單動態校驗(密碼強度檢測) ( JS 產生最初的目的 )

  • 網頁特效

  • 服務端開發(Node.js)

  • 桌面程式(Electron)

  • App(Cordova)

  • 控制硬體-物聯網(Ruff)

  • 游戲開發(cocos2d-js)

3.3 HTML/CSS/JS 的關系

三者關系圖

3.4 瀏覽器執行 JS 簡介

瀏覽器分成兩部分:渲染引擎和 JS 引擎

瀏覽器引擎

瀏覽器本身并不會執行JS代碼,而是通過內置 JavaScript 引擎(解釋器) 來執行 JS 代碼 ,JS 引擎執行代碼時逐行解釋每一句原始碼(轉換為機器語言),然后由計算機去執行,所以 JavaScript 語言歸為腳本語言,會逐行解釋執行,

JS執行流程

3.5 JS 的組成

JS的組成

1.ECMAScript

ECMAScript 是由ECMA 國際( 原歐洲計算機制造商協會)進行標準化的一門編程語言,這種語言在萬維網上應用廣泛,它往往被稱為 JavaScript或 JScript,但實際上后兩者是 ECMAScript 語言的實作和擴展,

ECMAScript

ECMAScript:規定了JS的編程語法和基礎核心知識,是所有瀏覽器廠商共同遵守的一套JS語法工業標準,

更多參看MDN:MDN手冊

2.DOM——檔案物件模型

檔案物件模型(DocumentObject Model,簡稱DOM),是W3C組織推薦的處理可擴展標記語言的標準編程介面,通過 DOM 提供的介面可以對頁面上的各種元素進行操作(大小、位置、顏色等)

3.BOM——瀏覽器物件模型

瀏覽器物件模型(Browser Object Model,簡稱BOM) 是指瀏覽器物件模型,它提供了獨立于內容的、可以與瀏覽器視窗進行互動的物件結構,通過BOM可以操作瀏覽器視窗,比如彈出框、控制瀏覽器跳轉、獲取解析度等,

3.6 JS 初體驗

JS 有3種書寫位置,分別為行內、內嵌和外部,

1.行內式

<input type="button" value="https://www.cnblogs.com/minvenus/archive/2022/09/18/點我試試" onclick="alert('Hello World')" />
  • 可以將單行或少量 JS 代碼寫在HTML標簽的事件屬性中(以 on 開頭的屬性),如:onclick

  • 注意單雙引號的使用:在HTML中我們推薦使用雙引號, JS 中我們推薦使用單引號

  • 可讀性差, 在html中撰寫JS大量代碼時,不方便閱讀;

  • 引號易錯,引號多層嵌套匹配時,非常容易弄混;

  • 特殊情況下使用

2.內嵌式

<script>
    alert('Hello  World~!');
</script>
  • 可以將多行JS代碼寫到 script 標簽中

  • 內嵌 JS 是學習時常用的方式

3.外部JS檔案

<script src="https://www.cnblogs.com/minvenus/archive/2022/09/18/my.js"></script>
  • 利于HTML頁面代碼結構化,把大段 JS代碼獨立到 HTML 頁面之外,既美觀,也方便檔案級別的復用

  • 參考外部 JS檔案的 script 標簽中間不可以寫代碼

  • 適合于JS 代碼量比較大的情況

4 - JavaScript注釋

  • flex子專案占的份數

  • align-self控制子項自己在側軸的排列方式

  • order屬性定義子項的排列順序(前后順序)

4.1 單行注釋

為了提高代碼的可讀性,JS與CSS一樣,也提供了注釋功能,
JS中的注釋主要有兩種,分別是 單行注釋 和 多行注釋,

單行注釋的注釋方式如下:

// 我是一行文字,不想被 JS引擎 執行,所以 注釋起來	
// 用來注釋單行文字(  快捷鍵   ctrl  +  /   )

4.2 多行注釋

多行注釋的注釋方式如下:

/*
  獲取用戶年齡和姓名
  并通過提示框顯示出來
*/
/* */  用來注釋多行文字( 默認快捷鍵  alt +  shift  + a ) 

快捷鍵修改為: ctrl + shift + /

vscode → 首選項按鈕 → 鍵盤快捷方式 → 查找 原來的快捷鍵 → 修改為新的快捷鍵 → 回車確認

5 - JavaScript輸入輸出陳述句

為了方便資訊的輸入輸出,JS中提供了一些輸入輸出陳述句,其常用的陳述句如下:

方法 說明 歸屬
alert(msg) 瀏覽器彈出警示框 瀏覽器
console.log(msg) 瀏覽器控制臺列印輸出資訊 瀏覽器
prompt(info) 瀏覽器彈出輸入框,用戶可以輸入 瀏覽器
  • 注意:alert() 主要用來顯示訊息給用戶,console.log() 用來給程式員自己看運行時的訊息,

6 - 變數的概念

白話:變數就是一個裝東西的盒子,

通俗:變數是用于存放資料的容器, 我們通過 變數名 獲取資料,甚至資料可以修改,

變數

6.2 變數在記憶體中的存盤

本質:變數是程式在記憶體中申請的一塊用來存放資料的空間,類似我們酒店的房間,一個房間就可以看做是一個變數,

變數的存盤

7 - 變數的使用

  • 變數的宣告
  • 變數的賦值

7.1 宣告變數

//  宣告變數  
var age; //  宣告一個 名稱為age 的變數  
  • var 是一個 JS關鍵字,用來宣告變數( variable 變數的意思 ),使用該關鍵字宣告變數后,計算機會自動為變數分配記憶體空間,不需要程式員管
  • age 是程式員定義的變數名,我們要通過變數名來訪問記憶體中分配的空間

7.2 賦值

age = 10; // 給 age  這個變數賦值為 10  
  • = 用來把右邊的值賦給左邊的變數空間中 此處代表賦值的意思
  • 變數值是程式員保存到變數空間里的值

7.3 變數的初始化

var age  = 18;  // 宣告變數同時賦值為 18
// 宣告一個變數并賦值, 我們稱之為變數的初始化,

7.4 變數語法擴展

  • 更新變數
    一個變數被重新復賦值后,它原有的值就會被覆寫,變數值將以最后一次賦的值為準,
var age = 18;

age = 81;   // 最后的結果就是81因為18 被覆寫掉了 
  • 同時宣告多個變數
    同時宣告多個變數時,只需要寫一個 var, 多個變數名之間使用英文逗號隔開,
var age = 10,  name = 'zs', sex = 2;
  • 宣告變數特殊情況
情況 說明 結果
var age ; console.log (age); 只宣告 不賦值 undefined
console.log(age) 不宣告 不賦值 直接使用 報錯
age = 10; console.log (age); 不宣告 只賦值 10

7.5 變數命名規范

規則:

  • 由字母(A-Za-z)、數字(0-9)、下劃線(_)、美元符號( $ )組成,如:usrAge, num01, _name

  • 嚴格區分大小寫,var app; 和 var App; 是兩個變數

  • 不能 以數字開頭, 18age 是錯誤的

  • 不能 是關鍵字、保留字,例如:var、for、while

  • 變數名必須有意義, MMD BBD nl → age

  • 遵守駝峰命名法,首字母小寫,后面單詞的首字母需要大寫,myFirstName

  • 推薦翻譯網站: 有道

8 - 資料型別

8.1 資料型別簡介

  • 為什么需要資料型別

在計算機中,不同的資料所需占用的存盤空間是不同的,為了便于把資料分成所需記憶體大小不同的資料,充分利用存盤空間,于是定義了不同的資料型別,

簡單來說,資料型別就是資料的類別型號,比如姓名“張三”,年齡18,這些資料的型別是不一樣的,

  • 變數的資料型別

變數是用來存盤值的所在處,它們有名字和資料型別,變數的資料型別決定了如何將代表這些值的位存盤到計算機的記憶體中,JavaScript 是一種弱型別或者說動態語言,這意味著不用提前宣告變數的型別,在程式運行程序中,型別會被自動確定:

var age = 10;        // 這是一個數字型
var areYouOk = '是的';   // 這是一個字串

在代碼運行時,變數的資料型別是由 JS引擎 根據 = 右邊變數值的資料型別來判斷 的,運行完畢之后, 變數就確定了資料型別,JavaScript 擁有動態型別,同時也意味著相同的變數可用作不同的型別:

var x = 6;           // x 為數字
var x = "Bill";      // x 為字串 
  • 資料型別的分類
    JS 把資料型別分為兩類:
  • 簡單資料型別 (Number,String,Boolean,Undefined,Null)
  • 復雜資料型別 (object)

8.2 簡單資料型別

簡單資料型別(基本資料型別)

JavaScript 中的簡單資料型別及其說明如下:

簡單資料型別

  • 數字型 Number
    JavaScript 數字型別既可以保存整數,也可以保存小數(浮點數),
var age = 21;       // 整數
var Age = 21.3747;  // 小數

1.數字型進制

最常見的進制有二進制、八進制、十進制、十六進制,

  // 1.八進制數字序列范圍:0~7
 var num1 = 07;   // 對應十進制的7
 var num2 = 019;  // 對應十進制的19
 var num3 = 08;   // 對應十進制的8
  // 2.十六進制數字序列范圍:0~9以及A~F
 var num = 0xA;   

現階段我們只需要記住,在JS中八進制前面加0,十六進制前面加 0x

2.數字型范圍

JavaScript中數值的最大和最小值

  • 最大值:Number.MAX_VALUE,這個值為: 1.7976931348623157e+308

  • 最小值:Number.MIN_VALUE,這個值為:5e-32

3.數字型三個特殊值

  • Infinity ,代表無窮大,大于任何數值

  • -Infinity ,代表無窮小,小于任何數值

  • NaN ,Not a number,代表一個非數值

4.isNaN

用來判斷一個變數是否為非數字的型別,回傳 true 或者 false

isNaN

     var usrAge = 21;
   var isOk = isNaN(userAge);
     console.log(isNum);          // false ,21 不是一個非數字
   var usrName = "andy";
     console.log(isNaN(userName));// true ,"andy"是一個非數字

因為 HTML 標簽里面的屬性使用的是雙引號,JS 這里我們更推薦使用單引號,

1.字串引號嵌套

JS 可以用單引號嵌套雙引號 ,或者用雙引號嵌套單引號 (外雙內單,外單內雙)

var strMsg = '我是"高帥富"程式猿';   // 可以用''包含""
var strMsg2 = "我是'高帥富'程式猿";  // 也可以用"" 包含''
//  常見錯誤
var badQuotes = 'What on earth?"; // 報錯,不能 單雙引號搭配

2.字串轉義符

類似HTML里面的特殊字符,字串中也有特殊字符,我們稱之為轉義符,

轉義符都是 \ 開頭的,常用的轉義符及其說明如下:

轉義符 解釋說明
\n 換行符,n 是 newline 的意思
\ \ 斜杠 \
' ' 單引號
" ” 雙引號
\t tab 縮進
\b 空格 ,b 是 blank 的意思

3.字串長度

字串是由若干字符組成的,這些字符的數量就是字串的長度,通過字串的 length 屬性可以獲取整個字串的長度,

var strMsg = "我是帥氣多金的程式猿!";
alert(strMsg.length); // 顯示 11

4.字串拼接

  • 多個字串之間可以使用 + 進行拼接,其拼接方式為 字串 + 任何型別 = 拼接之后的新字串

  • 拼接前會把與字串相加的任何型別轉成字串,再拼接成一個新的字串

//1.1 字串 "相加"
alert('hello' + ' ' + 'world'); // hello world
//1.2 數值字串 "相加"
alert('100' + '100'); // 100100
//1.3 數值字串 + 數值
alert('11' + 12);     // 1112 
  • + 號總結口訣:數值相加 ,字符相連

5.字串拼接加強

console.log('pink老師' + 18);        // 只要有字符就會相連 
var age = 18;
console.log('老師age歲啦');      // 這樣不行哦
console.log('老師' + age);         // 老師18
console.log('老師' + age + '歲啦'); // 老師18歲啦
  • 經常會將字串和變數來拼接,變數可以很方便地修改里面的值

  • 變數是不能添加引號的,因為加引號的變數會變成字串

  • 如果變數兩側都有字串拼接,口訣“引引加加 ”,刪掉數字,變數寫加中間

布爾型Boolean

布爾型別有兩個值:true 和 false ,其中 true 表示真(對),而 false 表示假(錯),

布爾型和數字型相加的時候, true 的值為 1 ,false 的值為 0,

console.log(true + 1);  // 2
console.log(false + 1); // 1

Undefined和 Null

一個宣告后沒有被賦值的變數會有一個默認值undefined ( 如果進行相連或者相加時,注意結果)

var variable;
console.log(variable);           // undefined
console.log('你好' + variable);  // 你好undefined
console.log(11 + variable);     // NaN
console.log(true + variable);   //  NaN

一個宣告變數給 null 值,里面存的值為空(學習物件時,我們繼續研究null)

var vari = null;
console.log('你好' + vari);  // 你好null
console.log(11 + vari);     // 11
console.log(true + vari);   //  1

8.3 獲取變數資料型別

  • 獲取檢測變數的資料型別

    typeof 可用來獲取檢測變數的資料型別

var num = 18;
console.log(typeof num) // 結果 number  

不同型別的回傳值

回傳值

  • 字面量
    字面量是在源代碼中一個固定值的表示法,通俗來說,就是字面量表示如何表達這個值,

  • 數字字面量:8, 9, 10

  • 字串字面量:'黑馬程式員', "大前端"

  • 布爾字面量:true,false

8.4 資料型別轉換

什么是資料型別轉換?

使用表單、prompt 獲取過來的資料默認是字串型別的,此時就不能直接簡單的進行加法運算,而需要轉換變數的資料型別,通俗來說,就是把一種資料型別的變數轉換成另一種資料型別,通常會實作3種方式的轉換:

轉換為字串型別
轉換為數字型
轉換為布爾型

轉換為字串

字串

  • toString() 和 String() 使用方式不一樣,

  • 三種轉換方式,更多第三種加號拼接字串轉換方式, 這一種方式也稱之為隱式轉換,

轉換為數字型(重點)

數字型

  • 注意 parseInt 和 parseFloat 單詞的大小寫,這2個是重點

  • 隱式轉換是我們在進行算數運算的時候,JS 自動轉換了資料型別

轉換為布爾型

布爾型

  • 代表空、否定的值會被轉換為 false ,如 ''、0、NaN、null、undefined

  • 其余值都會被轉換為 true

console.log(Boolean('')); // false
console.log(Boolean(0)); // false
console.log(Boolean(NaN)); // false
console.log(Boolean(null)); // false
console.log(Boolean(undefined)); // false
console.log(Boolean('小白')); // true
console.log(Boolean(12)); // true

9 - 解釋型語言和編譯型語言

計算機不能直接理解任何除機器語言以外的語言,所以必須要把程式員所寫的程式語言翻譯成機器語言才能執行程式,程式語言翻譯成機器語言的工具,被稱為翻譯器,

流程圖

  • 翻譯器翻譯的方式有兩種:一個是編譯,另外一個是解釋,兩種方式之間的區別在于翻譯的時間點不同

  • 編譯器是在代碼執行之前進行編譯,生成中間代碼檔案

  • 解釋器是在運行時進行及時解釋,并立即執行(當編譯器以解釋方式運行的時候,也稱之為解釋器)

9.2 執行程序

執行程序

類似于請客吃飯:

	編譯語言:首先把所有菜做好,才能上桌吃飯

	解釋語言:好比吃火鍋,邊吃邊涮,同時進行

10 - 關鍵字和保留字

10.1 識別符號

標識(zhi)符:就是指開發人員為變數、屬性、函式、引數取的名字,

識別符號不能是關鍵字或保留字,

10.2 關鍵字

關鍵字:是指 JS本身已經使用了的字,不能再用它們充當變數名、方法名,

包括:break、case、catch、continue、default、delete、do、else、finally、for、function、if、in、instanceof、new、return、switch、this、throw、try、typeof、var、void、while、with 等,

10.3 保留字

保留字:實際上就是預留的“關鍵字”,意思是現在雖然還不是關鍵字,但是未來可能會成為關鍵字,同樣不能使用它們當變數名或方法名,

包括:boolean、byte、char、class、const、debugger、double、enum、export、extends、fimal、float、goto、implements、import、int、interface、long、mative、package、private、protected、public、short、static、super、synchronized、throws、transient、volatile 等,

注意:如果將保留字用作變數名或函式名,那么除非將來的瀏覽器實作了該保留字,否則很可能收不到任何錯誤訊息,當瀏覽器將其實作后,該單詞將被看做關鍵字,如此將出現關鍵字錯誤,

拓展閱讀@

掃一掃下面的二維碼,關注我們,獲取更多精彩活動資訊,有好禮相送哦~

微信公眾號:梁京隨筆

【騰訊云】618云上GO!云服務器限時秒殺,1核2G首年95元!

騰訊云服務器

【華為云】特惠專區,多款產品限時特價!

華為云服務器

【阿里云】上新必買搶先知,勁爆優惠不錯過!

阿里云服務器

【七牛云】優惠專區,多款云產品限時搶購!

七牛云服務器

【又拍云】免費CDN專區,10G免費大放送!

【知識星球】一個資料分享的站點,各種學習資料,隨時分享

微信贊助    微信打賞    支付寶打賞

免責宣告:本文所有內容均為互聯網上收集而來,僅供學習交流,整理文章為傳播相關技術,如有侵權,請聯系洗掉

A thousand journey is started by taking the first step.

轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/509047.html

標籤:其他

上一篇:從SAP ECC升級到SAP S4HANA, 幾個Key Points

下一篇:Html飛機大戰(十五): 上線

標籤雲
其他(157675) Python(38076) JavaScript(25376) Java(17977) C(15215) 區塊鏈(8255) C#(7972) AI(7469) 爪哇(7425) MySQL(7132) html(6777) 基礎類(6313) sql(6102) 熊猫(6058) PHP(5869) 数组(5741) R(5409) Linux(5327) 反应(5209) 腳本語言(PerlPython)(5129) 非技術區(4971) Android(4554) 数据框(4311) css(4259) 节点.js(4032) C語言(3288) json(3245) 列表(3129) 扑(3119) C++語言(3117) 安卓(2998) 打字稿(2995) VBA(2789) Java相關(2746) 疑難問題(2699) 细绳(2522) 單片機工控(2479) iOS(2429) ASP.NET(2402) MongoDB(2323) 麻木的(2285) 正则表达式(2254) 字典(2211) 循环(2198) 迅速(2185) 擅长(2169) 镖(2155) 功能(1967) .NET技术(1958) Web開發(1951) python-3.x(1918) HtmlCss(1915) 弹簧靴(1913) C++(1909) xml(1889) PostgreSQL(1872) .NETCore(1853) 谷歌表格(1846) Unity3D(1843) for循环(1842)

熱門瀏覽
  • IEEE1588PTP在數字化變電站時鐘同步方面的應用

    IEEE1588ptp在數字化變電站時鐘同步方面的應用 京準電子科技官微——ahjzsz 一、電力系統時間同步基本概況 隨著對IEC 61850標準研究的不斷深入,國內外學者提出基于IEC61850通信標準體系建設數字化變電站的發展思路。數字化變電站與常規變電站的顯著區別在于程序層傳統的電流/電壓互 ......

    uj5u.com 2020-09-10 03:51:52 more
  • HTTP request smuggling CL.TE

    CL.TE 簡介 前端通過Content-Length處理請求,通過反向代理或者負載均衡將請求轉發到后端,后端Transfer-Encoding優先級較高,以TE處理請求造成安全問題。 檢測 發送如下資料包 POST / HTTP/1.1 Host: ac391f7e1e9af821806e890 ......

    uj5u.com 2020-09-10 03:52:11 more
  • 網路滲透資料大全單——漏洞庫篇

    網路滲透資料大全單——漏洞庫篇漏洞庫 NVD ——美國國家漏洞庫 →http://nvd.nist.gov/。 CERT ——美國國家應急回應中心 →https://www.us-cert.gov/ OSVDB ——開源漏洞庫 →http://osvdb.org Bugtraq ——賽門鐵克 →ht ......

    uj5u.com 2020-09-10 03:52:15 more
  • 京準講述NTP時鐘服務器應用及原理

    京準講述NTP時鐘服務器應用及原理京準講述NTP時鐘服務器應用及原理 安徽京準電子科技官微——ahjzsz 北斗授時原理 授時是指接識訓通過某種方式獲得本地時間與北斗標準時間的鐘差,然后調整本地時鐘使時差控制在一定的精度范圍內。 衛星導航系統通常由三部分組成:導航授時衛星、地面檢測校正維護系統和用戶 ......

    uj5u.com 2020-09-10 03:52:25 more
  • 利用北斗衛星系統設計NTP網路時間服務器

    利用北斗衛星系統設計NTP網路時間服務器 利用北斗衛星系統設計NTP網路時間服務器 安徽京準電子科技官微——ahjzsz 概述 NTP網路時間服務器是一款支持NTP和SNTP網路時間同步協議,高精度、大容量、高品質的高科技時鐘產品。 NTP網路時間服務器設備采用冗余架構設計,高精度時鐘直接來源于北斗 ......

    uj5u.com 2020-09-10 03:52:35 more
  • 詳細解讀電力系統各種對時方式

    詳細解讀電力系統各種對時方式 詳細解讀電力系統各種對時方式 安徽京準電子科技官微——ahjzsz,更多資料請添加VX 衛星同步時鐘是我京準公司開發研制的應用衛星授時時技術的標準時間顯示和發送的裝置,該裝置以M國全球定位系統(GLOBAL POSITIONING SYSTEM,縮寫為GPS)或者我國北 ......

    uj5u.com 2020-09-10 03:52:45 more
  • 如何保證外包團隊接入企業內網安全

    不管企業規模的大小,只要企業想省錢,那么企業的某些服務就一定會采用外包的形式,然而看似美好又經濟的策略,其實也有不好的一面。下面我通過安全的角度來聊聊使用外包團的安全隱患問題。 先看看什么服務會使用外包的,最常見的就是話務/客服這種需要大量重復性、無技術性的服務,或者是一些銷售外包、特殊的職能外包等 ......

    uj5u.com 2020-09-10 03:52:57 more
  • PHP漏洞之【整型數字型SQL注入】

    0x01 什么是SQL注入 SQL是一種注入攻擊,通過前端帶入后端資料庫進行惡意的SQL陳述句查詢。 0x02 SQL整型注入原理 SQL注入一般發生在動態網站URL地址里,當然也會發生在其它地發,如登錄框等等也會存在注入,只要是和資料庫打交道的地方都有可能存在。 如這里http://192.168. ......

    uj5u.com 2020-09-10 03:55:40 more
  • [GXYCTF2019]禁止套娃

    git泄露獲取原始碼 使用GET傳參,引數為exp 經過三層過濾執行 第一層過濾偽協議,第二層過濾帶引數的函式,第三層過濾一些函式 preg_replace('/[a-z,_]+\((?R)?\)/', NULL, $_GET['exp'] (?R)參考當前正則運算式,相當于匹配函式里的引數 因此傳遞 ......

    uj5u.com 2020-09-10 03:56:07 more
  • 等保2.0實施流程

    流程 結論 ......

    uj5u.com 2020-09-10 03:56:16 more
最新发布
  • 使用Django Rest framework搭建Blog

    在前面的Blog例子中我們使用的是GraphQL, 雖然GraphQL的使用處于上升趨勢,但是Rest API還是使用的更廣泛一些. 所以還是決定回到傳統的rest api framework上來, Django rest framework的官網上給了一個很好用的QuickStart, 我參考Qu ......

    uj5u.com 2023-04-20 08:17:54 more
  • 記錄-new Date() 我忍你很久了!

    這里給大家分享我在網上總結出來的一些知識,希望對大家有所幫助 大家平時在開發的時候有沒被new Date()折磨過?就是它的諸多怪異的設定讓你每每用的時候,都可能不小心踩坑。造成程式意外出錯,卻一下子找不到問題出處,那叫一個煩透了…… 下面,我就列舉它的“四宗罪”及應用思考 可惡的四宗罪 1. Sa ......

    uj5u.com 2023-04-20 08:17:47 more
  • 使用Vue.js實作文字跑馬燈效果

    實作文字跑馬燈效果,首先用到 substring()截取 和 setInterval計時器 clearInterval()清除計時器 效果如下: 實作代碼如下: <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta ......

    uj5u.com 2023-04-20 08:12:31 more
  • JavaScript 運算子

    JavaScript 運算子/運算子 在 JavaScript 中,有一些運算子可以使代碼更簡潔、易讀和高效。以下是一些常見的運算子: 1、可選鏈運算子(optional chaining operator) ?.是可選鏈運算子(optional chaining operator)。?. 可選鏈操 ......

    uj5u.com 2023-04-20 08:02:25 more
  • CSS—相對單位rem

    一、概述 rem是一個相對長度單位,它的單位長度取決于根標簽html的字體尺寸。rem即root em的意思,中文翻譯為根em。瀏覽器的文本尺寸一般默認為16px,即默認情況下: 1rem = 16px rem布局原理:根據CSS媒體查詢功能,更改根標簽的字體尺寸,實作rem單位隨螢屏尺寸的變化,如 ......

    uj5u.com 2023-04-20 08:02:21 more
  • 我的第一個NPM包:panghu-planebattle-esm(胖虎飛機大戰)使用說明

    好家伙,我的包終于開發完啦 歡迎使用胖虎的飛機大戰包!! 為你的主頁添加色彩 這是一個有趣的網頁小游戲包,使用canvas和js開發 使用ES6模塊化開發 效果圖如下: (覺得圖片太sb的可以自己改) 代碼已開源!! Git: https://gitee.com/tang-and-han-dynas ......

    uj5u.com 2023-04-20 08:01:50 more
  • 如何在 vue3 中使用 jsx/tsx?

    我們都知道,通常情況下我們使用 vue 大多都是用的 SFC(Signle File Component)單檔案組件模式,即一個組件就是一個檔案,但其實 Vue 也是支持使用 JSX 來撰寫組件的。這里不討論 SFC 和 JSX 的好壞,這個仁者見仁智者見智。本篇文章旨在帶領大家快速了解和使用 Vu ......

    uj5u.com 2023-04-20 08:01:37 more
  • 【Vue2.x原始碼系列06】計算屬性computed原理

    本章目標:計算屬性是如何實作的?計算屬性快取原理以及洋蔥模型的應用?在初始化Vue實體時,我們會給每個計算屬性都創建一個對應watcher,我們稱之為計算屬性watcher ......

    uj5u.com 2023-04-20 08:01:31 more
  • http1.1與http2.0

    一、http是什么 通俗來講,http就是計算機通過網路進行通信的規則,是一個基于請求與回應,無狀態的,應用層協議。常用于TCP/IP協議傳輸資料。目前任何終端之間任何一種通信方式都必須按Http協議進行,否則無法連接。tcp(三次握手,四次揮手)。 請求與回應:客戶端請求、服務端回應資料。 無狀態 ......

    uj5u.com 2023-04-20 08:01:10 more
  • http1.1與http2.0

    一、http是什么 通俗來講,http就是計算機通過網路進行通信的規則,是一個基于請求與回應,無狀態的,應用層協議。常用于TCP/IP協議傳輸資料。目前任何終端之間任何一種通信方式都必須按Http協議進行,否則無法連接。tcp(三次握手,四次揮手)。 請求與回應:客戶端請求、服務端回應資料。 無狀態 ......

    uj5u.com 2023-04-20 08:00:32 more