Javascript语法
通过 JavaScript 编程语言和一套简单的 API, 用户可以与 SequoiaDB 巨杉数据库进行交互。在此过程中,用户只需要了解基本的 JavaScript 编程语言知识即可使用 SequoiaDB Shell。 本文将简单介绍 Javascript 语法。
JavaScript注释
为提高代码的可读性,可以添加注释对 JavaScript 进行解释。
JavaScript 单行注释
单行注释以 // 开头。例如:
// JavaScript 单行注释
JavaScript 多行注释
多行注释以 /* 开始,以 */ 结尾。例如:
/*
JavaScript 多行注释
*/
JavaScript变量
JavaScript 变量可用于存放值。变量可以使用短名称(比如 x 和 y),也可以使用描述性的名称(比如 age, sum, totalvolume)。JavaScript 变量命名的规范如下:
- 变量必须以字母开头
- 变量也能以 $ 和 _ 符号开头(但不推荐)
- 变量名称对大小写敏感(y 和 Y 是不同的变量)
例如:
var x=2;
var y=3;
var z=x+y;
Note:
JavaScript 语句和 JavaScript 变量都对大小写敏感
JavaScript数据类型
JavaScript 数据类型包括:字符串、数字、布尔、数组、对象、Null和Undefined。
JavaScript字符串
- 字符串是存储字符(比如 “Bill Gates”)的变量。
- 字符串可以是引号中的任意文本。可以使用单引号或双引号。例如:
var carname="Bill Gates";
var carname='Bill Gates';
JavaScript数字
JavaScript 只有一种数字类型。数字可以带小数点,也可以不带。例如:
var x1=34.00; // 使用小数点来写
var x2=34; // 不使用小数点来写
JavaScript布尔
布尔(逻辑)只能有两个值:true 或 false。
var x=true
var y=false
JavaScript数组
数组下标是基于零的,所以第一个项目是 [0],第二个是 [1],以此类推。 下面的代码创建名为 cars 的数组:
var cars=new Array();
cars[0]="Audi";
cars[1]="BMW";
cars[2]="Volvo";
或者 (condensed array):
var cars=new Array("Audi","BMW","Volvo");
或者 (literal array):
var cars=["Audi","BMW","Volvo"];
JavaScript 对象
JavaScript 对象由花括号分隔。在括号内部,对象的属性以名称和值对的形式 (name : value) 来定义。属性由逗号分隔:
var person={firstname:"Bill", lastname:"Gates", id:5566};
上面示例中的对象 (person) 有三个属性:firstname、lastname 以及 id。 对象属性有两种寻址方式:
name=person.lastname;
name=person["lastname"];
Undefined 和 Null
- Undefined 表示变量不含有值
- 可以通过将变量的值设置为 null 来清空变量
示例:
cars=null;
person=null;
JavaScript对象
在 JavaScript 中,对象是数据(变量),拥有属性和方法。
当声明如下一个 JavaScript 变量时:
var txt = "Hello";
实际上已经创建了一个 JavaScript 字符串对象。字符串对象拥有内建的属性 length。对于上面的字符串来说,length 的值是 5。字符串对象同时拥有若干个内建的方法。
属性:
txt.length=5
方法:
txt.indexOf()
txt.replace()
txt.search()
Note:
在面向对象的语言中,属性和方法常被称为对象的成员
创建 JavaScript 对象
JavaScript 中的几乎所有事务都是对象:字符串、数字、数组、日期和函数等。同时,用户也可以创建自己的对象。
本例创建名为 “person” 的对象,并为其添加了四个属性:
例如:
person=new Object();
person.firstname="Bill";
person.lastname="Gates";
person.age=56;
person.eyecolor="blue";
创建新 JavaScript 对象有很多不同的方法,并且用户还可以向已存在的对象添加属性和方法。
访问对象的属性
访问对象属性的语法:
objectName.propertyName
使用 String 对象的 length 属性来查找字符串的长度:
var message="Hello World!";
var x=message.length;
执行以上代码后,x 的值是:
12
访问对象的方法
用户可以通过下面的语法调用方法:
objectName.methodName()
JavaScript函数
函数是由事件驱动的或者当它被调用时执行的可重复使用的代码块。
JavaScript 函数语法
函数就是包裹在花括号中的代码块,前面使用了关键词 function:
function functionname()
{
这里是要执行的代码
}
当调用该函数时,会执行函数内的代码。
Note:
JavaScript 对大小写敏感。关键词 function 必须是小写的,并且必须以与函数名称相同的大小写来调用函数
调用带参数的函数
在调用函数时,可以向其传递值,这些值被称为参数。可以定义任意多的参数,由逗号 (,) 分隔:
myFunction(argument1,argument2)
变量和参数必须以一致的顺序出现。第一个变量就是第一个被传递的参数的给定的值,以此类推。
带有返回值的函数
如果用户希望函数将值返回调用它的地方,可以通过使用 return 语句就可以实现。在使用 return 语句时,函数会停止执行,并返回指定的值。
例如:
function myFunction()
{
var x=5;
return x;
}
JavaScript运算符
JavaScript 算术运算符
算术运算符用于执行变量与/或值之间的算术运算。 给定 y=5,下面的表格解释了这些算术运算符:
运算符 | 描述 | 例子 | 结果 |
---|---|---|---|
+ | 加 | x=y+2 | x=7 |
- | 减 | x=y-2 | x=3 |
乘 | x=y2 | x=10 | |
/ | 除 | x=y/2 | x=2.5 |
% | 求余数 (保留整数) | x=y%2 | x=1 |
++ | 累加 | x=++y | x=6 |
— | 递减 | x=—y | x=4 |
JavaScript 赋值运算符
赋值运算符用于给 JavaScript 变量赋值。
给定 x=10 和 y=5,下面的表格解释了赋值运算符:
运算符 | 例子 | 等价于 | 结果 |
---|---|---|---|
= | x=y | x=5 | |
+= | x+=y | x=x+y | x=15 |
-= | x-=y | x=x-y | x=5 |
= | x=y | x=x*y | x=50 |
/= | x/=y | x=x/y | x=2 |
%= | x%=y | x=x%y | x=0 |
比较和逻辑运算符
比较和逻辑运算符用于测试 true 或 false。
比较运算符
逻辑运算符用于测定变量或值之间的逻辑。
运算符 | 描述 | 例子 |
---|---|---|
== | 等于 | x==8 为 false |
=== | 全等(值和类型) | x === 5 为 true;x === “5” 为 false |
!= | 不等于 | x!=8 为 true |
> | 大于 | x>8 为 false |
< | 小于 | x<8 为 true |
>= | 大于或等于 | x>=8 为 false |
<= | 小于或等于 | x<=8 为 true |
逻辑运算符
逻辑运算符用于测定变量或值之间的逻辑。
给定 x=6 以及 y=3,下表解释了逻辑运算符:
运算符 | 描述 | 例子 |
---|---|---|
&& 1 | and | (x < 10 && y > 1) 为 true |
|| | or | (x == 5 | | y == 5) 为 false |
! | not | !(x==y) 为 true |
If…Else语句
条件语句用于基于不同的条件来执行不同的动作。下面为 if….else 语法:
if (条件)
{
当条件为 true 时执行的代码
}
else
{
当条件不为 true 时执行的代码
}
例如:
当时间小于 20:00 时,将得到问候 “Good day”,否则将得到问候 “Good evening”。
if (time<20)
{
x="Good day";
}
else
{
x="Good evening";
}
x 的结果是:
Good evening
Switch 语句
switch 语句用于基于不同的条件来执行不同的动作。下面为 switch 循环语法:
switch(n)
{
case 1:
执行代码块 1
break;
case 2:
执行代码块 2
break;
default:
n 与 case 1 和 case 2 不同时执行的代码
}
For循环
for 循环是在创建循环时常会用到的工具。下面为 for 循环语法:
for (语句 1; 语句 2; 语句 3)
{
被执行的代码块
}
例如:
for (var i=0; i<5; i++)
{
x=x + "The number is " + i + "\n";
}
While循环
While 循环会在指定条件为真时循环执行代码块。下面为 while 循环的语法:
while (条件)
{
需要执行的代码
}
例如:
while (i<5)
{
x=x + "The number is " + i + "\n";
i++;
}
Break/Continue语句
- break 语句用于跳出循环。
- continue 用于跳过循环中的一个迭代。
Break 语句
break 语句可用于跳出循环,break 语句跳出循环后,会继续执行该循环之后的代码(如果有的话)。
例如:
for (i=0;i<10;i++)
{
if (i==3)
{
break;
}
x=x + "The number is " + i + "\n";
}
Continue 语句
continue 语句中断循环中的迭代,如果出现了指定的条件,然后继续循环中的下一个迭代。
例如:
for (i=0;i<=10;i++)
{
if (i==3) continue;
x=x + "The number is " + i + "\n";
}