結束
==js**的執行順序
檢查編譯階段:檢查語法錯誤,變數的宣告,函式的宣告等
**執行階段:變數的賦值、函式的呼叫等執行語句
==js基礎的三座大山
原型 原型鏈
作用域 閉包
非同步 單執行緒
基本型別typeof;undefined boolean number string
引用型別instanceof;object null function
typeof undefined; //undefined
typeof 'abc'; //string
typeof true; //boolean
typeof {}; //object
typeof ; //object
typeof null; //object
typeof console.log; //function
var a = 10; var b = ;
一行**呼叫多個語句: var a=1,b,c='nu';
var宣告,但未賦值的變數。undefined
if (a) {} else {}
for (var i = 0; i < things.length; i++)
for (var i in stu)
var num = 1; //switch結構的()可以放各種資料型別,採用===判斷。
switch(num)
while(condition)
//字串拼接
var a=100+10; //110
var b=100+'10'; //'10010'
//==運算子
100 == '100'; //true
0 == ''; //true
null == undefined; //true
//邏輯運算
console.log(10&&0) //0
console.log(''||'abc') //abc
var a=100;
console.log(!!a) //true
// & | 只能進行按位運算,如果兩邊不是數值型別,將轉為數值型別運算
console.log(nan===nan);//false ???
typeof(nan); //???
=== == !== != ^異或
//boolean運算子
//注意:js中為false的為 0 nan null undefined '' false
var a=true;
var b=100;
var c='';
//這裡相當於obj.a===null||obj.b===undefined,簡寫形式
//這是jquery原始碼中推薦的方法,其他的都用===
if (obj.a==null){}
沒返回值,接收為undefined;返回值個數??
function xx_(p0, p1)
函式宣告呼叫,沒有先後之分
func()
function func(){}
匿名名函式,一定要先宣告
var func = function(){}
func()
直接將匿名函式賦值給乙個事件:
windows.οnlοad=function(){}//載入後直接執行
自執行函式:
//開頭用!表示這是自執行函式。 推薦
//用() 將匿名函式宣告與呼叫包裹在一起。 推薦
//用()將匿名函式宣告語句進行包裹。
var f = new function(「x」, "return xx;");
等同於 var f = function(x);
isnan用於檢測乙個變數,是不是乙個非數值。(呼叫number函式,嘗試將變數轉為數值型別)
number函式,用於將各種型別轉為資料型別
undefined nan
null 0
true false 1 0
純數值字串,可以;否則 nan;
如果字串『』 0;『 』 0;
parseint()將字串轉為數值,和number有區別
alter() 彈框輸出
prompt() 彈框輸入:引數都可省略:輸入提示內容;輸入框的預設文字;
document.write(); 在瀏覽器螢幕上列印
console.log(); 瀏覽器控制台列印
var str = prompt(「請輸入一句話」, 「你真帥」)
alter(str);
物件 屬性-值 的集合;陣列 值 的集合;
var obj = {};
var arr = ;
obj[2] = 『a』;
arr[2] = 『a』;
console.log(obj[2]);//a
console.log(arr[2]);//a
console.log(obj.length);//undefined
console.log(arr.length);//3
var arr = [1,2,3,4,5,6]
var stu =
var o1 = {};
var o2 = new object();
var o3 = new f1();
function f1() {};
var f2 = function () {};
var f3 = new function(『str』, 『console.log(str)』);
o1 o2 o3 為普通物件
f1 f2 f3 為函式
o3.constructor == f1。o3是建構函式f1的例項
對於ecmascript中的引用型別而言,prototype是儲存著他們所有例項方法的真正所在。
所有物件的__proto__ 都指向其構造器的prototype
所有函式物件的__proto 都指向 function.prototype, 它是乙個空函式。
function.prototype.proto=== object.prototype
object.prototype.proto=== null
總結:原型和原型鏈是js實現繼承的一種模型。
原型鏈的行程是真正靠__proto__ 而非prototype
eg:var animal = function(){}
var dog = function(){}
animal.price = 2000;
dog.prototype = animals;
var tidy = new dog();
dog.price; //undefined
tidy.price; //2000
js是單執行緒執行的語言,必須有非同步。
console.log(10);
settimeout(function() , 0);
settimeout(function() , 1000);
console.log(30);//非同步
//列印結果是:10 30 40 20
//執行settimeout時,這裡面的函式會被存起來在乙個佇列裡面,不會立即執行。所有程式處理完,處理機處於空閒狀態,立馬看看佇列裡面有沒有待執行的函式啥的。發現settimeout裡面的函式,這個時候執行。
同步會阻塞**執行,非同步不會
console.log(1000);
alert(2000);//會阻塞,不會產生非同步
console.log(3000);
//列印結果是:1000 2000(按確定之後出現3000)3000
使用說明 附註工具使用說明
附註工具使用說明 附註工具用途 附註工具主要用於更新利用word附註應用程式生成的帶域 的附註,該工具在word右鍵 更新鏈結 的基礎上進行了優化,故在使用時,不能再利用word右鍵 更新鏈結 而要用本工具的 更新當前鏈結 或 更新所有鏈結 使用說明 一 更換路徑 當利用word附註應用程式生成帶域...
使用說明 農用遮光網使用說明
農用遮光網使用說明 建築防塵網購買方 建築施工企業 在購買建築防塵網時,應該對 作出比較,可以分辨品牌 型號,且購買時應該在一定程度上了解信譽良莠。建築防塵網購買方 市場售賣方 在選購建築防塵網時,可以把 作為基礎,好的 可以用來彌補信譽不足,而差的 則需要按照你的服務收費。農用遮光網使用說明 用途...
Hibernate tools 使用說明
05年的8月份第一次接觸hibernate tools,使用起來感覺還不錯,但也沒有深入研究,後來由於一直在做乙個專案,再後來用了一陣myeclipse,現在換了公司,使用wtp all in one eclipse的乙個版本 生成domain的時候使用了hibernate tools,發現都不知怎...