類型檢測
typeof null === "object" 特例
原始類型 VS 對象
包裝類型對象,生成中間數值 ,用完即 刪除,
1: 基礎語法
JavaScript方法call,apply,caller,callee,bind的使用詳解及區別
http://blog.csdn.net/xxb2008/article/details/7862956
String
http://www.runoob.com/jsref/jsref-obj-string.html
var txt = new String("string");
或者更簡單方式:
var txt = "string";
作用域:
沒有塊級別的作用域
!function(){
}
變成函數表達式。。。。。;
這里有一個地方需要注意,函數內部聲明變量的時候,一定要使用var命令。如果不用的話,你實際上聲明了一個全局變量!
1: 基礎語法
JavaScript方法call,apply,caller,callee,bind的使用詳解及區別
http://blog.csdn.net/xxb2008/article/details/7862956
String
http://www.runoob.com/jsref/jsref-obj-string.html
var txt = new String("string");
或者更簡單方式:
var txt = "string";
作用域:
沒有塊級別的作用域
!function(){
}
變成函數表達式。。。。。;
這里有一個地方需要注意,函數內部聲明變量的時候,一定要使用var命令。如果不用的話,你實際上聲明了一個全局變量!
function f1(){
n=999;
}
f1();
alert(n); // 999
[圖片上傳中。。。(2)]
2:高級用法,不同于其他語言
function f1(){
n=999;
}
f1();
alert(n); // 999
2:高級用法,不同于其他語言
JavaScript方法call,apply,caller,callee,bind的使用詳解及區別
http://blog.csdn.net/qy1387/article/details/7854589
http://www.tuicool.com/articles/EVF3Eb
對象和函數的區別
http://lishaopeng.com/2016/01/24/js-object-system/
AppDatas().selectCourse(aa);
AppDatas.selectCourse.Course_Type_Id = 1;
export 的代碼 只執行了一次
JS 數組
數組有大小,
size from 0 to 2的23次方 -1 ;
delete ar[0]
ar[0] == undefined 數組的長度不變,只是把數值變為了 undefined
數組時動態的,無需指定大小
arr.length -= 1 arr.pop 刪除最后一個元素;
數組中的原型 也會被 in 中打印出來,
JS 閉包
http://www.ruanyifeng.com/blog/2009/08/learning_javascript_closures.html
function f1(){
var n=999;
function f2(){
alert(n);
}
return f2;
}
···
var result=f1();
result(); // 999
1:JS 基礎代碼演示
2:定義數組
數組對象用來在單獨的變量名中存儲一系列的值。
我們使用關鍵詞 new 來創建數組對象。下面的代碼定義了一個名為 myArray 的數組對象:
var myArray=new Array()
var mycars=new Array(3)
mycars[0]="Saab"
mycars[1]="Volvo"
mycars[2]="BMW"
var mycars=new Array("Saab","Volvo","BMW")
Javascript閉包(Closure)
function requestzyx(url){
let isOk;
return new Promise((resolve, reject) => {
fetch(url)
.then((response) => {
if (response.ok) {
isOk = true;
} else {
isOk = false;
}
return response.json();
})
.then((responseData) => {
if (isOk) {
resolve(responseData);
} else {
reject(responseData);
}
})
.catch((error) => {
reject(error);
console.error(error);
});
});
}
return requestzyx(url)
.then((DataList) => {
callback(DataList);
})
.catch((error) => {
console.error(error);
callback({status:-1, message:'網絡失敗!'});
});