JavaScript 基本语法

JavaScript 注释

					
//单行注释:
document.getElementById("demo").innerHTML = "Hello World!";       //单行注释

/*
 多行注释:
 */

/*
 * 多行注释:
 * 
 *
 */
					
				

JavaScript 输出

JavaScript 没有任何打印或者输出的函数。JavaScript 可以通过不同的方式来输出数据:

JavaScript 字符串

JavaScript 字符串直接量

					
console.log('<meta charset="utf-8">');

console.log("hello                       //抛出异常
 world!");

console.log("hello\nworld!");           //正确换行

console.log("字符串\
直接量");                                //显示“字符串直接量”

console.log('I can\'t read.');          //显示"I can' t read."
					
				

字符串直接量必须包含在单引号或双引号中。字符串直接量有以下几个特点:

字符串操作

使用 + 运算符

连接字符串最简便的方法是使用加号 + 运算符。

					
var str1 = "hello", str2 = " world!";
var new_str = str1 + str2;
					
				

JavaScript 数据类型转换

JavaScript 能够根据运算环境自动转换值的类型,以满足运算需要。但是在很多情况下需要开发者手动转换数据类型,以控制运算过程。

转换为字符串

常用值转换为字符串
转换前转换后
1"1"
0"0"
true"true"
false"false"
""""
undefined"undefined"
null"null"
NaN"NaN"
Infinity"Infinity"

使用加号 + 运算符

当值与空字符串相加运算时,JavaScript 会自动把值转换为字符串。

					
var number = 123;
number = number + "";
console.log(typeof number);   //返回类型为 string

var b = true;
b = b + "";
console.log(b);               //返回字符串"true"

var arr = [1, 2, 3];
a = a + "";
console.log(a);               //返回字符串 "1,2,3"

var func = function() {
  return 1;
};
func = func + "";
console.log(func);            //返回字符串"function (){return 1;}"
					
				

当字符串 "string" 与 数字 n 相加时,数字会自动转换成字符串,然后进行字符串之间的 + 运算(字符串连接)。

					
var i = 1;
var str = "hello" + i;
console.log(str);             //控制台输出:hello1
					
				

JavaScript 数组

					
/*
 * 使用 数组直接量 创建数组:
 * 在方括号 [] 中将数组元素用逗号隔开即可。
 * 数组直接量的语法允许有可选的结尾逗号。
 * 数组直接量中的值可以是任意类型,也可以是任意表达式。
 * 数组直接量可以包含对象直接量或其他数组直接量。
 * 如果省略数组直接量中的某个值,省略的元素将被赋予 undefined 值。
 */
var empty = [];          //没有元素的数组
var primes = [2, 3, 5, 7, 11,];  //有5个数值的数组
var misc = [1, 2.0, true, "a"];  //4个不同类型的元素的数组
var table = [base, base+1, base+2];  //元素是表达式的数组
var obj_arr = [[1, {x:2, y:2}], [2, {x:3, y:4}]];   对象直接量->数组直接量->数组直接量
var undefs = [,,];   //数组有 2 个元素,都是 undefined(结尾逗号可选)。

/*
 * 构造函数 Array() 创建数组
 */
var arr = new Array();
//等价于数组直接量:
var arr = [];

/*
 * 指定长度数组。
 * 
 */
var arr = new Array(10);
					
				

数组初始化

在 JavaScript 中定义一个数组,如果没有指定某个索引的值,则默认为 undefined。如果定义一个长度为 20,且初始值为空字符串的数组,需要用到 for 循环。

					
var arr;
console.log(arr);          //undefined

var arr = new Array();
console.log(arr);          //[] length: 0

var arr = [];
console.log(arr);          //Array(0) length: 0

var arr = 0;
console.log(arr);          //[0] 0:0 length: 1

var arr = [];
for(var i = 0; i < 20; i++) {
  arr[i] = 0;
}
console.log(arr);          //(20) [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]

var arr = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
console.log(arr);          //(20) [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]  
					
				

数组元素的读和写

稀松数组

数组长度

数组元素的添加和删除

					
/*
 * 为数组的新索引赋值是添加数组元素最简单的方式。
 */
var arr = [];    //数组直接量创建一个空数组
arr[0] = "zero"; //添加元素

/*
 * 使用 push() 方法在数组的末尾添加一个或多个元素。
 */
arr.push("one");           //末尾添加一个元素
arr.push("two", "thress"); //末尾添加两个元素

/*
 * 此时数组 arr = ["zero", "one", "two", "three"];
 */

/*
 * push() 方法与给 array[array.length] 数组新索引直接赋值等效。
 */
arr[arr.length] = "four";

/*
 * 使用 unshift() 方法在数组的首部插入一个元素,并且将其他元素依次移到更高的索引处。
 */
					
				

JavaScript 函数

					
function funcName() {
  //执行代码	
}

function funcName(var1, var2, ..., varN) {
	//执行代码
}

function funcName() {
  
  return var;
}