ecmascript(es) : 負責翻譯,為js的核心,直譯器。
dom (document object model 文件物件模型):賦予js操作html的能力,document。
bom (browser object modal 瀏覽器物件模型):賦予js操作瀏覽器的能力,window,不相容不建議使用。
5種基本型別:unll,undefined,boolean,number,string
1種複雜型別:object
5種引用型別:array,object,function,date,regexp
3種基本包裝型別:boolean,number,string
2種單體內建物件:global,math
undefined:沒有定義的變數,var宣告沒有初始化的變數
typeof 可檢視變數型別,乙個變數應只存乙個型別的資料。
var a = 12;
// console.info(typeof a); number
a = 'dwefeyui';
// console.info(typeof a); string
a = true;
// console.info(typeof a); boolean
a = function();
// console.info(typeof a) function
a = document;
// console.info(typeof a); object
var b;
// console.info(typeof b); undefined
// 1.真的未定義
// 2.雖然定義但是沒有給東西
parseint() 可將字串轉換為數字(整數),parsefloat()可將字串轉換為數字(小數);
var a = 'abc', b = '20.5632';
// console.info(parseint(a)); nan
// console.info(parseint(b)); 20
var a = '3.5';
console.info(parsefloat(a));
isnan() 判斷該元素是否為nan,nan表示(not a numer),兩個nan之間不相等;
雙等 == 先轉換型別,再進行比較;(值相等,等式成立)
三等=== 不轉換型別,直接比較;(值和型別必須相等,等式成立)
var a = 5;
var b = '5';
// console.info(a==b); true
// console.info(a===b); //false
減法也可做隱式型別轉換,但加法不行。
var a = '12';
var b = '5';
// console.info(a+b); //125
// console.info(a-b); //7
區域性變數:只能在定義他的函式裡面使用;
全域性變數:在任何地方都能用;
閉包:子函式可以使用父函式的區域性變數。
匈牙利命名法:型別字首(僅給變數取名時需要),首字母大寫
運算子+加、-減、*乘、/除,%求模(餘數)。(隔行變色,秒轉時間)
賦值=、+=、-=、*=、/=、%=。(i+=1等效於i=i+1)
邏輯&&並且、||或者、!否;運算優先順序:括號;
程式流程控制
判斷:if、switch、?:三元目()運算子
switch (變數) ;
條件?語句1:語句2;
迴圈:for、while;跳出:break(中斷整個迴圈)、continue(中斷本次迴圈);
真和假真(true):非0數字、非空字串、非空物件
假(false):數字0、空字串、null(空物件)、undefined
json
和陣列的區別:陣列用 [ ],下標為數字,有length,故迴圈時採用0 - length這種方法;
json用 ,下標為字串,沒有length,故迴圈時用for in這種方法;
var json = ;
var arr = [12,5,'add'];
//可像變數一樣操作
console.info(json.a);
for(var i = 0;iconsole.info('第' + i + '個東西' + json[i]);
}
for(var i in json)
將函式返到函式外面,為函式的執行結果,可做運算,乙個函式應該只返回一種值。
function show(a,b)
console.info(show(3,5));
arguments [ ] (可變參,不定參):引數個數可變,為乙個陣列。
css中傳兩個引數為獲採樣式,三個引數為設定樣式,一般給引數取名,增加可讀性。
function css (obj,name,value)else
}window.onload = function()
getcomputedstyle () 用於獲取非行間樣式(firefox、chrome、safari)、
currenstyle () 也可(ie、opera),style用於獲取行間樣式。相容性問題通常用if else處理
將需要多次用到的函式進行封裝方便呼叫。
function getstyle(obj,name)else
}window.onload = function()
上述getstyle()只能用於取單一的樣式,如:width,height;無法取出border等含有多個元素的樣式,
需寫成border-color等樣式。
有兩種寫法,一般採用第乙個
var a = [1,2,3];
var a = new array(1,2,3);
屬性:length,可以用於獲取陣列長度,也可設定,乙個陣列中應該只存一種資料型別。
新增,刪除元素:push(),從尾部新增;unshift(),從頭部新增;pop(),從尾部刪除;shift(),從頭部刪除;
刪除 splice(起點,長度);插入/替換 splice(起點,長度,元素)。
var arr = [1,2,3,4,5,6];
// arr.splice(2,3);
arr.splice(2,0,'a','b');
console.info(arr);
陣列連線:concatt ( ); 分隔符:join ( ) ;
var a = [1,2,3];
var b = [4,5,6];
console.info(a.concat(b));
var arr = [1,2,3,4,5,6];
console.info(arr.join('--'));
陣列排序:sort ( ) ,但通常將陣列當做字串來比較,導致排序數字時亂序。
js基礎知識總結
作為梳理的目錄 移動端開發相關 框架和工具相關 vue資料繫結原理 vue父子元件和兄弟元件的通訊問題 vuex的原理 vuex的action和mutation的非同步操作和同步操作問題 vue的事件監聽 vue router獲取自定義引數 vue router的go相關 vue元件設計相關 模組化...
js基礎知識總結(全)
1.js版helloworld 2.注釋 單行 多行 3.操作符 數值一樣 型別和數值都一樣 4.邏輯運算子 5.定義變數 弱型別 var num 1 var string 我是中國人 var myboolean true 6.方法 用function定義 7.流程控制語句 if else whil...
js基礎知識入門總結
1 第乙個js程式 乙個專案包括三部分 前端 html css js 資料庫 後端技術 引入方式 頁面中直接寫,script標籤引入 js事件繫結 input type button value 按鈕 onclick myclick input type button value 按鈕 id btn...