您的位置:首页 > Web前端 > JavaScript

JavaScript语法快速浏览

2013-12-30 22:31 357 查看
快速浏览

变量和赋值
//
所有在双斜杠之后的内容都是注释
 
//
变量是表示值的一个符号名字
//
变量是通过var关键字声明的
var x;
//
声明一个变量x
 
//
值可以通过等号赋值给变量
x = 0;
//
现在变量x的值为0
x;
// => 0:通过变量获取其值
 
// JavaScript支持多种数据类型
x = 1;
//
数字
x = 0.01;
//
整数和浮点数共用一种数据类型
x =
"hello world";
//
字符串
x =
'JavaScript';
//
字符串
x =
true;
//
布尔值
x =
false;
//
另一个布尔值
x =
null;
// null是一个特殊的值,意思是"空"
x =
undefined;
// undefined和null非常类似
对象和数组
// JavaScript中的最重要的类型就是对象
//
对象是
名/值
对的集合,
或字符串到值映射的集合
var book = {

topic : "JavaScript",

fat : true

};
 
//
通过"."或"[]"来访问对象属性
book.topic;
// => "JavaScript"
book["fat"];
// => true:另外一种获取属性的方式
book.author =
"Flanagan";
//
通过赋值创建一个新属性
book.contents = {};
// {}是一个空对象,
它没有属性
 
// JavaScript同样支持数组(以数字为索引的列表)
var primes = [2, 3, 5, 7];
//
拥有4个值的数组,
由"["和"]"划定边界
primes[0];
// => 2:数组中的第一个元素(索引为0)
primes.lenth;
// => 4:数组中的元素个数
primes[primes.length - 1];
// => 7:数组的最后一个元素
primes[4] = 9;
//
通过赋值来添加新元素
primes[4] = 11;
//
或通过赋值来改变已有的元素
var empty = [];
// []是空数组,
它具有0个元素
empty.length;
// => 0
 
//
数组和对象中都可以包含另一个数组或对象:
var points = [{x : 0, y : 0}, {x : 1, y : 1}];
var data = [{

trial1 : [[1, 2], [3, 4]],

trial2 : [[2, 3], [4, 5]]

}];
运算符
//
运算符作用于操作数,
生成一个新的值
//
最常见的是算术运算符(Arithmetic operators)
3 + 2;
// => 5:加法(addition)
3 - 2;
// => 1:减法(subtraction)
3 * 2;
// => 6:乘法(multiplication)
3 / 2;
// => 1.5:除法(division)
points[1].x - points[0].x;
// => 1:更复杂的操作数也能照常工作
"3" +
"2";
// => "32": +
可心完成加法运算也可以作字符串连接
 
// JavaScript定义了一些算术运算符的简写形式
var count = 0;
//
定义一个变量
count++;
//
自增1
count--;
//
自减1
count += 2;
//
自增2:
和"count = count + 2;"写法一样
count *= 3;
//
自乘3:
和"count = count * 3;"写法一样
count;
// => 6:
变量名本身也是一个表达式
 
//
相等关系运算符用来判断两值是否相等
//
不等、大于、小于运算符的运算结果是true或false
var x = 2, y = 3;
//
这里的 =
等号是赋值的意思,
不是比较相等
x == y;
// => false:
相等
x != y;
// => true:
不等
x < y;
// => true:
小于
x <= y;
// => true:
小于等于
x > y;
// => false:
大于

x >= y;
// => false:
大于等于

"two" ==
"three";
// => false:
两个字符串不相等
"two" >
"three";
// => true: "tw"在字母表中的索引大于"th"
false == (x > y);
// => true: false和false相等
 
//
逻辑运算符是对布尔值的合并或求反
(x == 2) && (y == 3);
// => true:
两个比较都是true, &&表示"与"
(x > 3) || (y < 3);
// => false:
两个比较不都是true, ||
表示"或"
!(x == y);
// => true: |
求反
函数与“方法”
//
函数是一段带有参数的JavaScript代码段,
可以多次调用
function plus_1(x){

return x + 1;

}
plus_1(y);
// => 4: y为3
 
//
函数是一种值,
可以赋值给变量
var square =
function(x){

return x * x;

};
square(plus_1(y));
// => 16:在一个表达式中调用两个函数
 
//
当将函数和对象合在一起时,
函数就变成了"方法"(method)
var a = [];
//
创建一个空数组
a.push(1, 2, 3);
// push()方法向数组中添加元素
a.reverse();
//
将数组元素的次序反转
//
也可以自定义自己的方法, "this"关键字是对定义方法的对象的引用
points.dist =
function(){

var p1 =
this[0];

var p2 =
this[1];

var a = p2.x - p1.x;

var b = p2.y - p1.y;

return Math.sqrt(a * a + b * b);

};

points.dist();
最常见的JavaScript控制语句
//
这些JavaScript语句使用该语法包含条件判断和循环
//
使用了类似C/C++、Java和其他语言的语法
function abs(x){
//
求绝对值的函数
if( x >= 0){
// if语句...
return x;
//
如果比较结果为true则执行这里的代码

}else{
return -x;
//
当if条件不满足时执行else子句

}

}
 
function factorial(n){
//
计算阶乘的函数
var product = 1;
//
给product赋值为1
while(n > 1){
//
当()内的表达式为true时循环执行{}内的代码
product *= n;
// "product = product * n;"的简写形式

n--;
}
//
循环结束
return product;
//
返回product

}
factorial(4);
// => 24: 1 * 4 * 3 *2
 
function factorial(n){
//
实现循环的另一种写法

var i, product = 1;

for(i = 2; i <= n; i++){

product *= i;

}

return product;

}
factorial(5);
// => 120: 1 * 2 * 3 * 4 * 5
“面向对象”
//
定义一个构造函数以初始化一个新的Point对象
function Point(x, y){
//
按照惯例,
构造函数均以大写字母开始
this.x = x;
//
关键字this指代初始化的实例
this.y = y;
//
将函数参数存储为对象的属性
}
//
不需要return
 
//
使用new关键字和构造函数来创建一个实例
var p =
new Point(1, 1);
//
平面几何中的点(1, 1)
 
//
通过给构造函数的prototye对象赋值来给Point对象定义方法
Point.prototype.r =
function(){
return Math.sqrt(this.x
* this.x
// this指代调用这个方法的对象
+
this.y *
this.y);
//
返回 x^2 + y^2的平方根

};
 

已使用 传智播客 创建。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  JavaScript