类型检测
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:'网络失败!'});
});