很多人初识JavaScript的时候会有很多困惑,或者受一些学习网站的迷惑,认为JavaScript东西太多太杂,其实它和C也差不多。
一、位置
用JavaScript编写的代码可以放在文档<head>标签中的<script>标签之间。
一种更好的方式是把JavaScript代码存为.js的独立文件;一般在文档的<head>部分放一个<script>标签,但最好的做法是把<script>标签放在html文档的最后,</body>标签之前,这样能使浏览器更快的加载页面。
二、语法
语句
如果把多条语句放在一行上,需要用分号分割,或者说在每条语句之后加一个分号;但一行的最后一条语句并不要求加分号,浏览器会自动添加。
注释
一行注释://这是注释
或者<!--这是注释
多行注释:/*这是注释
这是注释*/
变量
JavaScript允许程序员直接对变量赋值而无需事先声明,赋值语句会自动为未声明的变量声明,但是提前声明变量是一种良好的习惯。
例如 var age=10,mood="happy"
在JavaScript里,变量和其他语法元素的名字都是区分大小写的。
JavaScript语法不允许变量名中包含空格或标点符号(美元符号"$"例外)。
JavaScript变量名允许包含字母、数字、美元符号和下划线(但第一个字符不允许是数字)。
数据类型
JavaScript对不同类型变量进行声明和赋值的语法完全一样。JavaScript是一种弱类型语言,程序员可以在任何阶段改变变量的数据类型。
1、字符串
字符串由零个或多个字符构成。字符包括(但不限于)字母、数字、标点符号和空格,字符串必须包含在引号里,单引号双引号都可以。
当字符串中包含引号时,需要进行转义,在JavaScript中用反斜杠(\)对字符进行转义。
var mood='don\'t ask'
2、数值
3、布尔值
var married=true
数组
在JavaScript中,数组可以用关键字Array声明。声明的同时可以指定初始元素个数,但也可以不给出元素个数。
var beatles=Array(4)
var beatles=Array()
像数组中添加元素的操作称为填充
方法:
var beatles=Array(4)
beatles[0]="John"
beatles[1]="Paul"
beatles[2]="Apple"
beatles[3]="Johniful"
或者
var beatles = Array("John", "Paul", "Apple", "Johniful")
甚至我们用不着明确的表示我们在创建数组。只需用一对方括号把各个元素的初始值括起来就可以了:
var years=[10,11,12,13]
甚至可以把不同数据类型混在一起:
var John=[20,true,"happy"]
数组还可以包含其他的数组!数组中的任何一个元素都可以把一个数组作为它的值:
var lennon=["John",1940,false]
var beatles=[]
beatles[0]=lennon
按我的理解这可以称为多维数组。
关联数组
通过在填充数组时为每个元素明确给出下标来改变浏览器的默认行为,下标不必局限于整数。
var lennon=Array()
lennon["name"]="John"
lennon["year"]=1940
lennon["living"]=false
这样的数组叫做关联数组,由于可以用字符串来代替数字值,因而代码更具有可读性。实际上,这是为数组添加属性。
对象
对象的每个值都是对象的一个属性。创建对象使用Object关键字,使用点号来获取属性。
创建对象
var lennon=Object();
lennon.name="John"
lennon.year=1940
lennon.living=false
更简洁的语法
{propertyName:value,propertyName:value}
var lennon = {name:"John", year:1940, living:false}
属性值也可以是其他对象