JavaScript语法快速浏览

快速浏览

变量和赋值

// 所有在双斜杠之后的内容都是注释

 

// 变量是表示值的一个符号名字

// 变量是通过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; // undefinednull非常类似

对象和数组

// 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: 变量名本身也是一个表达式

 

// 相等关系运算符用来判断两值是否相等

// 不等、大于、小于运算符的运算结果是truefalse

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: falsefalse相等

 

// 逻辑运算符是对布尔值的合并或求反

(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: y3

 

// 函数是一种值, 可以赋值给变量

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的平方根

};

 

已使用 传智播客 创建。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值