javaScript第一天(1)

01-JavaScript基礎

核心知識點

  1. javaScript書寫位置
  2. javaScript變量
  3. javaScript數據類型
  4. javaScript數據類型轉換
  5. javaScript運算符

今日學習目標

  1. 能夠定義一個變量并完成變量的賦值
  2. 能夠說出每一種具體的數據類型
  3. 能夠數據類型之間的相互轉化
  4. 能夠掌握各種運算符的作用

序言

JavaScript發展歷史(js)

1. 1994年,網景公司(Netscape)發布了Navigator瀏覽器0.9版,這是世界上第一款比較成熟的網絡瀏覽器,轟動一時。但是這是一款名副其實的瀏覽器--只能瀏覽頁面,瀏覽器無法與用戶互動,當時解決這個問題有兩個辦		法,一個是采用現有的語言,許它們直接嵌入網頁。另一個是發明一種全新的語言。2. 1995年Sun公司將Oak語言改名為Java,正式向市場推出。Sun公司大肆宣傳,許諾這種語言可以"一次編寫,到處運	 行"(Write Once, Run Anywhere),它看上去很可能成為未來的主宰。3. 網景公司動了心,決定與Sun公司結成聯盟4. 34歲的系統程序員Brendan Eich登場了。19954月,網景公司錄用了他,他只用10天時間就把Javascript設計出來了。  (多肽語言)5. (1)借鑒C語言的基本語法; (2)借鑒Java語言的數據類型和內存管理; (3)借鑒Scheme語言,將函數提升到"第一等公民"(first class)的地位; (4)借鑒Self語言,使用基于原型(prototype)的繼承機制。

在這里插入圖片描述

JavaScript是什么?

JavaScript: 基于對象和事件驅動,運行在瀏覽器客戶端的腳本語言。[js]? js的運行環境: 運行在瀏覽器端的一種語言? 最后將所有的js代碼都要以對象的形式去執行,都要通過事件的方式去觸發執行【DOM】對象: 現實世界中的對象:  將任何一個具體的事物都是一個對象【萬事萬物皆對象】編程中的對象: 對現實中對象的抽象描述面向對象特征:  封裝   繼承   多態編程思想:?面向對象:【推薦】代碼執行都要以一個具體的對象為整體去執行?面向過程:代碼執行的時候,一行一行執行的。

JavaScript能干什么?

  ? 常見的網頁效果【表單驗證,輪播圖。。。】? 與H5配合實現游戲【水果忍者: http://www.jq22.com/demo/html5-fruit-ninja/】? 實現應用級別的程序【 http://naotu.baidu.com】? 實現統計效果【http://echarts.baidu.com/examples/】? 地理定位等功能【http://lbsyun.baidu.com/jsdemo.htm#i4_5】? 在線學編程【https://codecombat.163.com/play/】? js可以實現人工智能  【面部識別】? 可以實現服務端功能  nodejs

JavaScript組成

  ? ECMASCRIPT    定義了javascript的語法規范,描述了語言的基本語法和數據類型? BOM (Browser Object Model) 即瀏覽器對象模型。瀏覽器對象模型,一套操作瀏覽器功能的API,通過BOM可以操作瀏覽器窗口,比如:彈出框、控制瀏覽器跳轉、獲取分辨率等? DOM (Document Object Model) 文檔對象模型,一套操作頁面元素的API,DOM可以把HTML看做是文檔樹,通過	      DOM提供的API可以對樹上的節點進行操作 【js+HTMl+css】

JavaScript書寫位置

內嵌式寫法

 ?  在html頁面內部設置<script type="text/javascript">js</script>注意:該標簽可以放到head標簽中或者body標簽中

外聯式寫法[推薦寫法]

 ? 1. 新建js文件2. 通過script標簽引用到當前頁面中<script type="text/javascript" src="test.js"></script>注意:1. 不能將代碼寫到外聯式標簽中。2. 一個網頁中可以同時調用多個外部js文件<script type="text/javascript" src="test.js"></script><script type="text/javascript" src="test.js"></script><script type="text/javascript" src="test.js"></script><script type="text/javascript" src="test.js"></script>

行內式寫法(不推薦)

?  將js代碼寫到標簽內部
<div onclick="js代碼"></div>注意:onclick 是一個點擊事件: 當點擊div的時候,會觸發該事件,執行該事件中的代碼

JavaScript中輸入消息方式


alert();document.write('<h1>我是一段文字</h1>');   在網頁中輸出信息prompt("請輸入姓名","測試");   //接收用戶輸入的confirm("確定不聽課么");console.log("adsadsfafds");	 //在控制臺中輸出消息總結:1. 在js中如果希望輸出一個具體的文本信息,必須帶引號2. 在使用document.write();的時候,可以在方法內輸出html標簽,加引號。

變量(重點)

變量概念

 ? 變量:  變量指的是在程序中保存數據的一個容器

定義變量及賦值

 ? 定義變量var  變量名;? 賦值變量名 =;? 總結:1. 一個變量一次只能保存一個值2. 最后一次的賦值結果3. 變量是區分大小寫(js區分大小寫)

變量命名規范

? 規則    必須遵守的,不遵守的話 JS引擎 發現并報錯 1. 由字母(A-Za-z)、數字(0-9)、下劃線(_)、美元符號( $ )組成,如:var usrAge, num01, _name2. 區分大小寫 強調:JS 嚴格區分大小寫 ,var app;var App; 是兩個變量3. 不能 以數字開頭,或者漢字定義變量名4. 不能 是關鍵字、保留字 和 代碼符號,例如:varforwhile&, class5. 不能出現空格? 規范  建議遵守的,不遵守的話 JS引擎 也不會報錯1. 變量名必須有意義2. 遵守駝峰命名法。首字母小寫,后面單詞的首字母需要大寫。

在這里插入圖片描述
在這里插入圖片描述

課堂測試

1.下面四個變量聲明語句中,哪一個變量的命名是正確的?Avar for               Bvar txt_name               Cvar myname myval      Dvar 2s2.下面哪一個語句定義了一個名為 Myval 的變量并將它的值賦為2205Avar myval=2205         Bvar MyVal = 2205Cvar Myval=2205         D.Myval=2205 【不規范】3. 氣溫表示方式有兩種:攝氏度和華氏度華氏度=9/5*攝氏度+32請使用代碼完成:讓用戶輸入任意的攝氏度,得到對應的華氏度。4. 交換兩個變量的值var a = 1;var b = 2;最后通過程序的方式將變量a的值改為 2,變量b的值改為15. 定義兩個變量,求和

數據類型(重點)

數據類型

 ? 數據類型:  數據類型指的是變量的數據類型

簡單數據類型

  • 數字類型(number)
? 凡是數字都屬于該類型【整數,小數,負數】? 只要變量的值是一個具體的數字,那么當前變量的數據類型就是數值類型? number類型表示的數字大小:
最大值是±1.7976931348623157乘以10308次方    Number.MAX_VALUE
最小值是±5 乘以10-324次方				     Number.MIN_VALUE
  • 字符串類型(string)
? 字符串可以是引號中的任意文本。可以使用單引號或雙引號? 在js中一般寫字符串類型的變量時候,推薦使用單引號。? 注意:1. 單引號和雙引號之間的嵌套例如: 輸出    我是"高帥富"程序猿;  2. 轉義字符\n 換行\\  斜杠\'  單引號\"  雙引號\r  回車符例如:var strMsg = 'I'm the GOD of my world ~!';   //輸出:I'm the GOD of my world ~!var strMsg2 = "I"m the GOD of my world ~!";  //輸出:I"m the GOD of my world ~!var strMsg3 = '反斜杠是這個 \\,神奇!';  //輸出:反斜杠是這個 \,神奇!
  • 布爾類型(boolean)
? truefalse 
  • undefined類型(了解)
		//如果一個變量沒有賦值,該變量的默認是undefinedvar n1;//如果一個變量的值是undefined,那么該變量的數據類型就是undefined類型

復雜數據類型(目前不講)

  • object類型

課堂測試

請說出如下變量分別對應的數據類型是什么?var  a1=123;    var a2="123";    var a3=true;  var a4="false";   var a5="1.63";var  a6; 		var a8="null"

數據類型判斷

 ? 使用  typeof 變量  可以得到對應變量的數據類型? 例如:var n1 = 123;//獲取n1的數據類型console.log(typeof n1);var n2 = '123';console.log(typeof n2);var n3 = true;console.log(typeof n3);

判斷一個變量是不是數字

isNaN(x) 方法例如:var usrAge = 21;var isOk = isNaN(usrAge);console.log(isNum); // false ,21 不是一個 非數值var usrName = "James";console.log(isNaN(usrName));//true ,"James"是一個 非數值

數據類型轉換

  • 轉數值類型
 ?Number(變量):總結:1. 可以通過該方法將數據類型轉換為數值類型var n1 = '123';console.log(typeof n1);//方法一:通過Number()n1 = Number(n1);console.log(typeof n1);2. 在轉換的過程中可以將原來的值保留,遇到小數直接保留下來,不會舍去3. 如果變量無法轉換為數值類型,那么返回的結果是NaN; 對應的數據類型依然是數值類4. 如果將布爾類型轉換為數值類型,true 轉化后的結果是 1  false 轉化后的結果是0?parseInt(變量)var num1 = parseInt("12.3abc");   // 返回12,如果第一個字符是數字會解析知道遇到非數字結束var num2 = parseInt("abc123");   // 返回NaN,如果第一個字符不是數字或者符號就返回NaN備注:1  只會保留整數部分,通過該方式進行數據類型轉換后得到就是一個整數2. 如果一個變量中的值無法轉換為具體數字,那么返回的結果是一個 NaN 的值3. NaN (not  a  number)   ----NaN對應的數據類型是數值類型4. 通過該方法可以將其他數據類型轉為數值類型?parseFloat(變量)總結:1. 通過該方法可以將其他數據類型轉換為數值類型2. 在轉換過程中,如果遇到小數,那么會直接將小數部分保留3. 如果轉化不成功過,返回的結果NaNparseFloat()把字符串轉換成浮點數
  • 轉字符串類型
 ?  變量.toString()var num = 5;console.log(num.toString());?  String(變量)備注:String()函數存在的意義:有些值沒有toString(),這個時候可以使用String()。比如:undefined和null
  • 轉布爾類型
 ? Boolean() 備注:0  |''(空字符串) | null | undefined | NaN  會轉換成false  其它都會轉換成 true

算數運算符

 + 運算總結:1. 如果是數值類型的變量相加,結果就是一個數值類型的結果2. 如果是一個字符串類型的變量相加,最后的結果就是字符串(加號起到的作用就是拼接字符串的功能)-運算總結:1. 如果是數值類型的變量相減,結果就是一個數值類型的結果2. 如果是數字的字符串相減,得到的結果也是一個數值類型結果(發生了隱式類型轉化)var n1 = '123';var n2 = '123';3. 如果是非數字的字符串相減,得到的結果是NaN*運算/運算1.如果是數值類型的變量相除,結果就是一個數值類型的結果2. 如果是數字的字符串相除,得到的結果也是一個數值類型結果(發生了隱式類型轉化)3. 如果是非數字的字符串相除,得到的結果是NaN4. 如果除數是0 ,得到的結果是 Infinity (無窮大的值)%取余(獲取余數)  

賦值運算符

 += |  -=   |  *=  |  /=  |   %= var  a += b ;    =====> 等價于        a = a+b;

一元運算符

  • 前置++ 和 后置 ++

  • 前置-- 和 后置–

比較運算符

1.   >  2.   <3.   >=     大于 或者 等于,只要有一個滿足即可4.   <=     小于 或者 等于,只要滿足一個即可5.  ==      只用來比較變量中的值是否相等,不考慮數據類型6.  ===     用來判斷值和數據類型必須同時相等7.  !=	    判斷值是否不相等,不考慮數據類型8.  !==      判斷值和數據類型? 總結:? 通過比較運算符得到的結果只有兩個結果,一個是正確的,一個是錯誤的? 通過比較運算符得到的結果 只有 true[正確]false[錯誤]

邏輯運算符

 1.   ||  或: 條件只要有一個滿足即可總結:1. 如果條件中有一個結為true(代表有一個條件滿足了),那么通過或運算后最后的結果為true2. 如果條件中結果都不滿足,那么通過或運算后結果為false2.   &&  且: 要求所有的條件都必須滿足才可以總結:1. 如果條件都為真(true),那么通過且運算后最后的結果也是真(true2. 如果條件中自少有一個條件不滿足(false),那么通過且運算后的結果為false3.   !	  非(取反) : 

運算符優先級(了解)

優先級從高到底1. ()  優先級最高2. 一元運算符  ++   --   !3. 算數運算符  先*  /  %+   -4. 關系運算符  >   >=   <   <=5. 相等運算符   ==   !=    ===    !==6. 邏輯運算符 先 &&||7. 賦值運算符

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

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

相關文章

javaScript第二天(1)

02-JavaScript基礎 1.核心知識點 運算符分支語句 【重點】斷點調試 [查看程序邏輯的一個技能] 2.今日學習目標 能夠掌握js中相關的運算符 能夠掌握理解算數運算符使用及特點能夠掌握賦值運算符的使用及特點能夠掌握一元運算符的使用及特點能夠掌握比較運算符的特點,理解等于…

第四周總結

第四周作業 這次作業屬于哪個課程C語言程序設計這個作業要求在哪里第四周作業我的課程目標全部學會這個作業在那個具體方面幫助我實現目標深入了解二維數組參考文獻教科書一&#xff0c;基礎作業 程序填空題5-1 輸入一個正整數 n (1≤n≤10)和n 階方陣a的元素&#xff0c;如果方…

2019春季學期第四周作業

2019春季學期第四周作業 這個作業屬于那個課程C語言程序設計Ⅰ這次作業要求在哪里2019春季學期第四周作業我在這個課程的目標是我希望能夠更加掌握循環和排序參考文獻無選擇法排序 本題要求將給定的n個整數從大到小排序后輸出。輸入格式&#xff1a; 輸入第一行給出一個不超過1…

javaScript第二天(2)

02JavaScript基礎隨堂筆記 01.運算符[☆] 知識點-算數運算符 作用就是進行 加, 減, 乘, 除 , 取余運算的 算數運算符的重點是通過算數運算和可以實現類型轉換 加號可以實現數據類型轉換: 一個數字和一個空字串相加最后的結果就是字符串減號也可以實現數據類型轉換乘法符號也可…

MFC中的基本知識

轉載于:https://www.cnblogs.com/o8le/archive/2012/05/21/2512178.html

Python中字符串操作函數string.split('str1')和string.join(ls)

Python中的字符串操作函數split 和 join能夠實現字符串和列表之間的簡單轉換&#xff0c; 使用 .split()可以將字符串中特定部分以多個字符的形式&#xff0c;存儲成列表 1 def split(self, *args, **kwargs): # real signature unknown2 """3 …

javaScript第三天(1)

03-JavaScript基礎 1.核心知識點 分支語句 【重點】斷點調試 [查看程序邏輯的一個技能]循環語句[重點 ☆☆☆] 2.今日學習目標 能夠掌握條件判斷分支語句能夠掌握switch分支語句能夠掌握三元表達式分支語句能夠掌握循環語句 條件判斷&#xff08;分支&#xff09; 語法 //…

關于單鏈表的頭插法和尾插法

#include<stdio.h>#include<stdlib.h> typedef struct Node { // 定義的鏈表類型 int data; struct Node *next; }LNode , *Linklist; void print(Linklist L){ //這是一個將鏈表數據輸出的函數 Linklist temL; whi…

javascript第三天(2)

03JavaScript基礎課堂筆記 01-分支語句 知識點-多條件判斷分支語句 語法 if(條件) {代碼1 }else if(條件) {代碼2 }else if(條件) {代碼3 }else {代碼4 }執行過程 1. 代碼自上而下執行 2. 程序先判斷第一個條件是否成立 true 還是 false 3. 如何第一個條件的結果是 true,那么就…

男生英文名大全

起個好聽的英文名很重要吆&#xff01;既要好記&#xff0c;好聽又要富有寓意。。。 AARON (希伯來)啟發的意思&#xff0c;AARON被描繪為不高但英俊的男人&#xff0c;誠實刻苦具有責任感&#xff0c;是個有效率個性沉靜的領導者。 ABEL (希伯來)"呼吸"的意思&am…

Codeforces Round #548 (Div. 2) A. Even Substrings

You are given a string ??1?2…??ss1s2…sn of length ?n, which only contains digits 11, 22, ..., 99. A substring ?[?…?]s[l…r] of ?s is a string ????1??2…??slsl1sl2…sr. A substring ?[?…?]s[l…r] of ?s is called even if the number r…

VI編輯器常用命令

vi —終端中的編輯器 vi 簡介 打開和新建文件 三種工作模式 常用命令 分屏命令 01. vi 簡介 1.1 學習 vi 的目的 在工作中&#xff0c;要對 服務器 上的文件進行 簡單 的修改&#xff0c;可以使用 ssh 遠程登錄到服務器上&#xff0c;并且使用 vi 進行快速的編輯即可 常見…

kubectl 常用命令

1. 查看鏡像定義的內容 docker image inspeck 鏡像名:版本 2. 查看可回滾歷史 # myapp-deploy 指定哪個 deployment kubectl rollout history deployment myapp-deploy 3. 回滾到上一個版本 # rollout undo 回滾到上一版本的 deployment kubectl rollout undo deployment mya…

javaScript基礎講義第四天(1)

05-javaScript基礎 核心知識點 數組操作字符串方式獲取系統時間Math相關方法 今日目標 能夠完成數組相關案例能后獲取系統時間能夠操作隨機數能夠完成小娜案例**[最終的目標]** 數組 思考如果我們希望同時保存多條數據該怎么辦&#xff1f;【例如&#xff1a;如何將班上所…

20175213 2018-2019-2 《Java程序設計》第4周學習總結

## 教材學習內容總結 在第四周的學習過程中&#xff0c;我學習了第五章的內容。 第五章內容總結&#xff1a; 1.子類繼承的方法只能操作子類繼承和隱藏的成員變量。 2.子類和父類在同一包的繼承性 子類自然繼承了其父類中不是private的成員作為自己的成員。 3.子類和父類不在同…

Machine Schedule為什么UVA過了POJ過不了

UVA1194 POJ1325 POJ要多判一個非零&#xff01;&#xff01;&#xff01; #include<cstdio> #include<vector> #include<cstring> using namespace std; vector<int>e[105]; int vis[105]; int link[105]; int t; int find(int x) {for(int i0;i<e…

課堂筆記

javaScript基礎 01.數組 復習數組 數組的意義 程序中可能會遇到一次保存多條數據情況,使用數組解決問題.數組也是一個保存數據的一個容器定義 通過字面量方式定義數組(推薦) var ary [];通過構造函數定義數組(了解) var ary new Array();賦值 通過索引的方式給數組賦值 va…

寫一個使兩個整數進行交換的方法(不能使用臨時變量) 【前端每日一題-27】...

寫一個使兩個整數進行交換的方法&#xff08;不能使用臨時變量&#xff09;這道題是一個比較有意思的題&#xff0c;記錄于此。var a10; var b20;...不用臨時變量讓a和b交換console.log(a); console.log(b);復制代碼es6 對象擴展[a,b][b,a];復制代碼利用執行順序aab; ba-b; aa-…

CS 320—Week 8 Homewor

CS 320—Week 8 Homework—Due W 3/27 11:59pmWrite your answers to the problems in the space indicated. Scan your solution and submitto Gradescope as a PDF file. You will receive an email about the Gradescope account.You may do this from your phone using fre…

javascript隨堂練習(分支,循環語句)

var flag true;//while語句執行&#xff1a;while(flag){//獲取用戶輸入選擇信息號碼&#xff1a;&#xff08;字符串中的 \n 為換行的效果&#xff09; var num prompt(你好,我是小娜\n請輸入編號或者關鍵詞選擇功能,輸入Q(q)退出聊天\n1.計算\n2.時間\n3.笑話) // 利用swit…