javascript快速入門

標識符多了一個美元符號
python中只有字母和下劃線和數字,數字不能開頭
數據類型有number(整形和浮點型),boolean,string,null,undefined(聲明未賦值),symbol(新引入),object類型(基本類型和特殊類型外的其他類型)

引入一個變量要先申明,
var a,
let b
常量類型,聲明時定義,python中不存在
const c = 12
var 和 let 隱式表達了它的作用域,var默認全局,let默認代碼塊內部(大括號限定的區域,包括if,while,for語句)
但是如果聲明在函數中var也只是函數中的作用域
let 定義在外部,{}和函數內部一樣也可以調用
var相當于在python中的普通變量
let只是在塊中才會限定作用域

var,let,const 對函數對象也會起作用
比如 var add = function (x,y){ return x+y }

不同類型的相加和短路運算符的類型轉換
所有類型與字符串相加(可以交換)都是隱式轉換為字符串
與數值形相加,布爾形相當于1或0參與相加, null相當于0處理,還可以相減
布爾形自身相加減也是相當于1或0加
undefined與其他類型相加減,返回NaN都是數值型,NaN是number類型的一個特值
null是object的一個空值

定義了名字的塊,只能表示 enties的,分為key和value

for 語句
for (x in iters)
console(i) 打印對象的索引
for (x of iters)
console(x) 打印對象的值
經測試,使用他打印塊字典對象的值有異常

函數:
函數的參數,函數對參數要求非常的低,默認位置參數,沒有關鍵字傳參,形參沒有匹配的實參
默認為undified,多傳參不會出錯,收集參數(可變參數)…args要在形參的最后.
打印一個函數,python顯示
<function abc at 0x0000020553CDF7B8>
js顯示 [Function: abc]

ES6以前類的定義
function add(x,y){
this.x = x // –>用來構造實例的特征屬性或方法
this.y = y
console.log(this) // –>公共執行的代碼
let abs = x // –> 類的屬性,所有實例都有的屬性
}
打印一個 add 表示是一個函數,
執行普通調用 add(1,2)
實例化 ,使用new關鍵字 , a = new add(2,3), 調用的函數也可以叫做構造器
function addd(x,y,z){
add.call(this,x,y) //調用父類,調用后相當于繼承,第一個參數需要給this,否則不能繼承,后面的參數為,
this.z= z //傳進的實參參數,他會被收集賦給父類函數,調用以后可以進行后續的調用父類的屬性(只能調用實例屬性或函數)
console.log(this.x,this,y,this,z)
}

新式ES6以后
class Point {
constructor(){ // 相當于init,初始化對象時默認運行,一般用來賦值this屬性,可以接收參數
this.x = 1
this.y = 2
console.log(‘point’,this.x,this.y)
}
show(x,y){ // 使用類的對象調用,
console.log(x,y)
console.log(‘_point’)
this.z =3
}
}
p = new Point() 初始化
p.show(2,3) 調用非this屬性的函數方法,如果this屬性有相同名屬性優先調用屬性,而且要遵守調用它的格式
類的繼承
class Point3d extends Point{
constructor (x,y) { //可以如果不寫相當于調用了 constructor(){ super() }
super() //必須要寫,如果要傳參, 把實參寫入,它將被按序收集
} // 父類的this屬性可以被重寫
//父類的函數子類的實例可以調用,也可以被重寫
}

try/catch語句
try { //默認執行直到 throw對象,
console.log(‘try–‘)
throw ReferenceError(‘new error’); //throw的必須為一個對象(javascript不能理解一切皆對象),必須為基本
//throw console.log(‘–out’) //類型,或者object(函數,塊,類),最后null也不識別
console.log(‘–out’)
}catch (error) {
console.log(‘—–‘)
console.log(error,typeof(error)) // 只會顯示基本類型或者object
console.log(error.constructor) // 會顯示具體類型
}

數組的解構 使用中括號和變量名解構,類似函數對參數的解構要求,支持可變參數,支持默認值

塊字典的解構,要按照字典的鍵來解構,否則解構得到undefined
支持定義缺省值.支持收集參數,收集的值類型為object,且不需要有對應的鍵

數組的內建函數
arr.push(4,6,’fg’) 把參數添加進數組后面
arr.pop() 無參,彈出最后一個
newarr = arr.map(fn) 把數組的值依次作為參數放入fn中處理,獲得的返回值組成一個新的數組
newarr = arr.filter(fn) 過濾數組返回一個新的數組
arr.forEach(function (e){ 把數組的元素依次放入函數中執行
if(e%2==0){
newarr.push(e)
}
else{
newarr.push(0)
}
})
console.log(newarr)

塊字典的處理函數
Object.keys .values .entries
Object.assign() //將可以處理成鍵值對的都包裝合并成一個塊字典,后面的鍵會覆蓋前面的同名的鍵和值

本文來自投稿,不代表Linux運維部落立場,如若轉載,請注明出處:http://www.www58058.com/91120

(0)
daishitongdaishitong
上一篇 2018-01-15 08:58
下一篇 2018-01-15 15:46

相關推薦

  • 實現真實的機柜模擬圖[原創]

    一般能反映機房設備位置、結構我們都喜歡通過網絡拓撲圖來展現,但個人感覺還不夠直觀、明了的表現出自己想要的結果(自己太挑剔了,呵呵)。因此寫一個生成真實機柜模擬圖平臺,實現與真實服務器外觀、服務狀態、空閑位置等信息。在線效果圖http://blog.liuts.com/idc/系統截圖1、平臺顯示某一排截圖2、平臺顯示某臺服務器詳細信息截圖3、狀態說明2U服務…

    Linux干貨 2015-03-27
  • Shell腳本編程

    Shell腳本編程 關于腳本的調試     bash -n /path/to/some_script                   &…

    Linux干貨 2016-08-15
  • 馬哥教育網絡班22期+第4周課程練習

    1、復制/etc/skel目錄為/home/tuser1,要求/home/tuser1及其內部文件的屬組和其它用戶均沒有任何訪問權限。 [root@localhost ~]# cp -r /etc/skel /home/tuser1 [root@localhost ~]# chmod&nb…

    Linux干貨 2016-09-05
  • 計算機相關簡介和linux相關簡介

    一、計算機相關簡介與linux的一些概念 計算機系統 由硬件(Hardware)系統和軟件(Software)系統兩大部分構成: 硬件系統 :CPU(控制器、運算器),內存儲器(RAM、ROM),外存儲器(硬盤等),輸入設備(鍵盤、鼠標等),輸出設備(顯示器等),其他設備相關設備。  軟件系統 :系統軟件(操作系統,數…

    Linux干貨 2017-02-18
  • 第二章 操作系統發展史

    Linux主流版本:   Debian(英語發音:/?d?bi?n/)是由GPL和其他自由軟件許可協議授權的自由軟件組成的操作系統,由Debian項目(Debian Project)組織維護。   歷史: Debian于1993年8月16日由一名美國普渡大學學生伊恩·默多克(Ian Murdock)首次發表。伊恩·默多克最初把他的系統稱為…

    Linux干貨 2016-06-03
  • sed 文本處理工具介紹

    sed簡介: 文本處理三劍客之一的sed sed是一種行編輯器,它一次處理一行內容,本身是一個管道命令,對行的數據進行 替換 增加 刪除 選取的工作 sed的命令為:sed[opition] ‘script’ inputfile…             &nbs…

    2017-06-24
欧美性久久久久