一、JavaScript引入方式
//1、方式一
<script>
// 在這里寫你的JS代碼
</script>
//2、方式二
<script src="https://www.cnblogs.com/guojieying/p/xxx.js"></script>
二 、JavaScript語法規范
//1、JavaScript對換行、縮進、空格不敏感,
ps:每一條陳述句末尾要加上分號,雖然分號不是必須加的,但是為了程式今后要壓縮,如果不加分號,壓縮之后將不能運行,
//2、所有的符號,都是英語的,比如括號、引號、分號,
//3、JavaScript的注釋:
單行注釋:// 我是注釋
多行注釋:
/*
多行注釋1
多行注釋2
*/
三、 變數
1、宣告變數的語法
// 1. 先宣告后定義
var name; // 宣告變數時無需指定型別,變數name可以接受任意型別
name= "egon";
// 2. 宣告立刻定義
var age = 18;
ps:js是弱型別、動態語言
2、變數名命名規范
//1、由字母、數字、下劃線、$ 組成,但是不能數字開頭,也不能純數字
//2、嚴格區分大小寫
//3、不能包含關鍵字和保留字(以后升級版本要用的關鍵字),
如:abstract、boolean、byte、char、class、const、debugger、double、enum、export、extends、final、float、goto
implements、import、int、interface、long、native、package、private、protected、public、short、static、super、synchronized、throws、transient、volatile
//4、推薦駝峰命名法:有多個有意義的單詞組成名稱的時候,第一個單詞的首字母小寫,其余的單詞首字母大寫
//5、匈牙利命名:就是根據資料型別單詞的的首字符作為前綴
3、ES6中let
ES6之前js沒有塊級作用域,ES6新增了let命令,用于宣告變數(宣告的變數屬于塊級作用域),流程控制陳述句的{}就是塊級作用域,其用法類似于var,但是所宣告的變數只在let命令所在的代碼塊內有效,例如:for回圈的計數器就很適合使用let命令,
for(let i=1;i<=5;i++){}
4、常量
ES6新增const用來宣告常量,一旦宣告,其值就不能改變,
const PI = 3.1415926; PI=3 //TypeError: "PI" is read-only
四、資料型別
js是動態語言:變數里面能夠存盤數字、字串等,變數會自動的根據存盤內容的型別不同,來決定自己的型別,
1、數值(Number)
JavaScript不區分整型和浮點型,就只有一種數字型別,即number
var x = 3; var y = 3.1; var z = 13e5; 意思是:13乘以(10的5次方) var m = 13e-5; 意思是:13乘以(10的-5次方) var n = NaN; // typeof n結果"number"
四舍五入
var num=1.3456 num.toFixed(2) // "1.35"
字串型別轉成數字
#字串轉numbber parseInt("123") // 回傳123 #NaN屬性是代表非數字值的特殊值,該屬性用于指示某個值不是數字, parseInt("ABC") // 回傳NaN #帶有自動凈化的功能;只保留字串最開頭的數字,后面的中文自動消失,例如: console.log(parseInt("18哈哈哈")); //18 #只去末尾的中文,不會去開頭的 console.log(parseInt("哈哈哈18")); // NaN # 字串中的數字轉浮點 parseInt("123.456") // 回傳123 parseFloat("123.456") // 回傳123.456 #自動帶有截斷小數的功能:取整,不四舍五入 var a = parseInt("1.3") + parseInt("2.6"); //a=3 var a = parseFloat("1.3") + parseFloat("2.6"); //a=3.9
數字型別轉成字符串
#數字轉成字串型別 var x=10; var y='20'; var z=x+y; // z='1020' typeof z; //String #數字轉成字串型別 var m=123; var n=String(m) var a=123; var b=a.toString()
2、字串(String)
var a = "Hello" var b = "world; var c = a + b; console.log(c); // 得到Helloworld
常用方法:
| 方法 | 說明 |
| .length | 回傳長度 |
| .trim() | 移除空白 |
| .trimLeft() | 移除左邊的空白 |
| .trimRight() | 移除右邊的空白 |
| .charAt(n) | 回傳第n個字符 |
| .concat(value, ...) | 拼接,拼接字串通常使用“+”號 |
| .indexOf(substring, start) | 子序列位置 |
| .substring(from, to) | 根據索引獲取子序列 |
| .slice(start, end) | 切片 |
| .toLowerCase() | 小寫 |
| .toUpperCase() | 大寫 |
| .split(delimiter, limit) | 分割 |







slice和substring的區別
string.slice(start, stop)和string.substring(start, stop): 兩者的相同點: 如果start等于end,回傳空字串 如果stop引數省略,則取到字串末 如果某個引數超過string的長度,這個引數會被替換為string的長度 substirng()的特點: 如果 start > stop ,start和stop將被交換 如果引數是負數或者不是數字,將會被0替換 silce()的特點: 如果 start > stop 不會交換兩者 如果start小于0,則切割從字串末尾往前數的第abs(start)個的字符開始(包括該位置的字符) 如果stop小于0,則切割在從字串末尾往前數的第abs(stop)個字符結束(不包含該位置字符)
ps:ES6中引入了模板字串,模板字串(template string)是增強版的字串,用反引號(`)標識,它的用途為
#1、完全可以當做普通字串使用 var msg = `my name is ayca` #2、也可以用來定義多行字串 var info = ` name:ayca age:18 sex:male ` #3、并且可以在字串中嵌入變數 var name = "ayca"; var age = 18; var msg = `my name is ${name}, my age is ${age}`;
注意:如果模板字串中需要使用反引號,則在其前面要用反斜杠轉義,
3、布林值(Boolean)
注意:區別于Python,true和false都是小寫
var a = true; var b = false;
任何資料型別都可以轉換為boolean型別:空字串、0、null、undefined、NaN都是false,
#布林值為假的資料類型 Boolean('') Boolean(0) Boolean(null) Boolean(undefined) Boolean(NaN) # 其余資料型別的布林值均為真,例如 Boolean([]) Boolean(123)
4、null和undefined
null表示值是空,一般在需要指定或清空一個變數時才會使用,如 name=null; undefined表示當宣告一個變數但未初始化時,該變數的默認值是undefined,還有就是函式無明確的回傳值時,回傳的也是undefined, null表示變數的值是空,undefined則表示只宣告了變數,但還沒有賦值,
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/99348.html
標籤:JavaScript
上一篇:JS——簡介
下一篇:NuxtJS快速入門
