定义变量
var x;
赋值
var x;
x = 10;
基本数据类型
数字
var x;
x = 10;
x = 0.01;
字符串
var x;
x = "hello world";
x = 'JavaScript';
x = "2" + "2"; // "22"
"two" == "three" // false:字符串不相等
"two" > "three" // true:根据字典序,"two"在"three"之后
布尔值
var x;
x = true;
x = false;
特殊值
var x;
x = null;
x = undefined;
数组
// 空数组
var empty = [];
// 数组
var primes = [2, 3, 5, 7];
// 未定义的元素的值为undefined
var array1 = [2, , , 7];
// 数组最后一个元素可以有逗号
var array2 = [2, 3, 5, 7,];
// 获取数组长度
var length = primes.length;
// 访问数组元素
primes[0] = 0;
// 访问最后一个元素
primes[primes.length - 1] = 0;
// 添加新元素
primes[4] = 0;
// 包含对象的数组
var points = [
{x: 0, y: 0},
{x: 1, y: 1}
];
// 数组方法
var a = [];
a.push(1, 2, 3);
a.reverse();
函数
- 如下代码中的
plus1
与square
是不同的,plus1
是函数,square
是变量。和 变量声明提前 一样,plus1
是整个函数声明提前的,而square
则只是提前了变量声明。
- 函数声明语句通常出现在 JavaScript 代码最顶层,也可以嵌套在其他函数体内的最顶层。
// 函数定义,结尾无分号
function plus1(x) {
return x + 1;
}
// 函数调用
var a = 1;
a = plus1(a); // 2
// 函数赋值
var square = function (x) {
return x * x;
};
对象
基本语法
// 空对象
var empty = {};
// 对象
var book = {
// 属性
topic: "JavaScript",
fat: true
};
// 属性名称可以是字符串而不是标识符
var fakebook = {
// 属性
"topic": "JavaScript",
'fat': true
};
// 访问的两种方式
book.topic = "change";
book["fat"] = false;
// 创建属性
book.author = "name";
book.contents = {};
// 包含数组的对象
var data = {
trial1: [[1, 2], [3, 4]],
trial2: [[2, 3], [4, 5]]
};
构造函数
// 构造函数
function Point(x, y) {
this.x = x;
this.y = y;
}
// 给对象定义方法
Point.prototype.fun = function () {
// do something
};
// 使用构造函数构造一个对象
var p = new Point(1, 1);
// 调用对象的方法
p.fun();
// 不需要传入任何参数给构造函数时,可以省略括号
new Object
new Date
方法
var points = [
{x: 0, y: 0},
{x: 1, y: 1}
];
// 定义方法,数组也可以拥有方法
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();
运算符
算术运算符
var x;
x = 2+2;
x = 2-2;
x = 2*2;
x = 2/2;
x++;
x--;
x += 2;
x *= 2;
比较运算符
var x = 1, y = 1;
x == y;
x != y;
x < y;
x <= y
x > y;
x >= y;
逻辑运算符
var x = 1, y = 1;
(x == 2) && (y == 3)
(x > 2) || (y < 3)
!(x == y)
控制语句
if语句
var x = 0;
if (x > 0) {
x++;
}
else {
x--;
}
while语句
var n = 10;
while (n >= 1) {
n--;
}
for语句
var n = 10, count = 0;
for (var i = 0; i < n; i++) {
count++;
}
运行JavaScript代码
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
<!--<script src="library.js"></script> <!–引入一个JavaScript库–>-->
</head>
<body>
<p>This is a paragraph of HTML</p>
<script>
function debug(msg) {
var log = document.getElementById("debuglog");
if (!log) {
log = document.createElement("div");
log.id = "debuglog";
log.innerHTML = "<h1>Debug Log</h1>";
document.body.appendChild(log);
}
var pre = document.createElement("pre");
var text = document.createTextNode(msg);
pre.appendChild(text);
log.appendChild(pre);
}
debug("I am here!");
</script>
<p>Here is more HTML</p>
</body>
</html>
网友评论