异常处理
try - catch - finally
ECMAScript中的参数都是值传递
例
var num1=5;
var num2=num1;
栈中会有两个相互独立的number
例二
var obj1 = new Object();
var obj2 = obj1;
obj1.name = "Niconico";
alert(obj2.name); //"Niconico"
引用类型值传递
ECMAScript种没有重载
参数(arguments)
arguments.length
JavaScript引用数据类型
Object
{} <=> new Object()
a.b <=> a['b']
Array
[] <=> new array
array.lenth(not read-only)
判断isArray
instanceofisArrayObject.prototype.toString.call(array)
方法
- conversion:
toString、toLocaleString、valueOf - stack method:
pop、push - queue method:
shift、unshift - reordering method:
reverse、sort - manipulation method:
concat、slice、splice - location method:
indexOf、lastIndexOf - iterative method:
every、filter、forEach、map、some - reduction method:
reduce、reduceRight
instanceof
判断构造函数(区别于typeof)
Date & RegExp
查阅文档
Function
构造方法
- 函数声明
alter(sum(10,10));
function sum(n1,n2){
return n1+n2;
}
- 函数表达式
alert(sum(10,10));
var sum=function(n1,n2){
return n1+n2;
}
函数名是一个指向函数的指针
单例内置对象
Global(window)
Math