一.注释
/**/
// 采用这个
二.标识符
标识符被用于语句、变量、参数、属性名、运算符和标记
三.数字
javascript只有一个单一的数字模型。它在内部被表示64位的浮点数。
没有分离出整形,所以1和1.0是相同的值。
负数:可以用前缀符- 来构成
值NaN是一个数值,它表示一个不能产生正常结果的运算结果。
NaN不等于任何值,包括它自己。isNaN()检测NaN
四.字符串
字符串字面量可以别包围在单引号或双引号中,它可能包含0个或多个字符。
\ (反斜线符号)是转义字符。javascript在被创建的时候,unicode是一个16位的字符集,所以javascript中的所有字符都是16位的。
javascritp没有字符类型。要表示一个字符,只需创建仅包含一个字符的字符串即可。
②。字符串有一个length属性
③。字符串是不可变的。一旦字符串被创建,就永远无法改变它。“+”连接字符串
五。语句
1.下面的值被当作假
false null undefined 空字符串'' 数字0 数字NaN 其他所有的值都被当作真,包括true、字符串“false”,以及所有的对象。
六。表达式
七。字面量
对象字面量是一种方便指定新对象的表示法。
八。函数
函数字面量定义了函数值。
九。对象
javascript的简单类型包括数字、字符串、布尔值(true false)、null值和undefined值。其他所有的值都是对象。
①。javascript中的对象是可变的键控集合
②。javasript中,数组是对象,函数是对象、正则表达式是对象,当然,对象也是对象。
③。对象是属性的容器,其中每个属性都拥有名字和值。属性的名字可以是包括空字符串在内的任意字符。属性值可以是除了undefined值之外的任何值。
④。javascript包括一个原型链特性,允许对象继承另一个对象的属性。正确地使用它能减少对象初始化的时间和内存消耗。
2.对象字面量
var empty_boject = {};
var stooge = {
// 属性名,并不强制要求用引号括住属性名。
"first-name": "jerome",
"last-name" : "howard"
};
属性的值可以从包括另一个对象字面量在内的任意表达式中获得。对象是可嵌套的:
var flight = {
airline: "oceanic",
number: 815,
departure:{
iata: "syd",
time: "2004-09-22 14:55",
city: "sydney"
},
arrival:{
iata: "lax",
time: "2004-09-23",
city: "los angeles"
}
};
3.检索
stooge["first-name"]
flight.departure.iata
4.更新
stooge["first-name"] = 'jerome';
5.引用
对象通过引用来传递。它们永远不会被拷贝:
var x = stooge;
x.nickname = 'curly';
var nick = stooge.nickname;
//因为x和stooge是指向同一个对象的引用,所以nick位'curly'
var a = {}, b={}, c={};
//a、b、b每个都引用一个不同的空对象
a = b =c={};
//a、b、b都引用同一个空对象。
6.原型
object.prototype是javascript中标准的对象
7.反射
typeof操作符对确定属性的类型很有帮助
8.枚举
9.删除
delete运算符可以用来删除对象的属性
another_stooge.nickname
delete another_stooge.nickname;
another_stooge.nickname
十、函数
一般来说,所谓编程就是将一组需求分解成一组函数与数据结构的技能。
1.函数对象
在javascript中函数就是对象。对象是“名/值”对的集合并拥有一个连到原型对象的隐藏连接。
①。对象字面量产生的对象连接到object.prototype
②。函数对象连接到function.protope 原型
③。因为函数是对象,所以它们可以像任何其他的值一样被使用。函数可以存放在变量、对象和数组中,函数可以被当作参数传递给其他函数,函数也可以再返回函数。而且,因为函数是对象,所以函数可以拥有方法。 函数的与众不同之处在于它们可以被调用。
2.函数字面量
//创建一个名为add的变量,并用来把两个数字相加的函数赋值给它。
var add = function (a,b){
return a+b;
};
注释:函数字面量包括四个部分。第一个部分是保留字function
第二个部分是函数名,它可以被省略。(匿名函数)
第三部分是包围在圆括号中的一组参数。
第四部分是包围在花括号中的一组语句。
3.调用
在javascript中一共有四种调用模式:
①。方法调用模式
当一个函数被保存为对象的一个属性时,我们称它为一个方法。
//创建myObject。它有一个value属性和一个increment方法。
//increment方法接受一个可选的参数。如果参数不是数字,那么默认使用数字1
var myObject = {
value: 0;
increment: function (inc) {
this.value += typeof inc ==='number' ? inc : 1;
}
};
myObject.increment();
document.writeln(myObject.value); //1
myObject.increment(2);
document.writeln(myObject.value); //3
②。函数调用模式
当一个函数并非一个对象的属性时,那么它被当作一个函数来调用
var sum = add(3,4); //sum的值为7
③。构造器调用模式
var quo = function(string){
this.status = string;
};
④。apply调用模式。