您的位置:首页 > Web前端 > Node.js

nodeJs的基础语法

2014-11-13 18:56 155 查看
nodejs基础语法

Node.js的数据类型

Node.js的逻辑判断

Node.js的各种循环

Node.js中使用函数

看看和js有没有什么区别

使用 node 的 REPL 模式

REPL (Read-eval-print loop),即输入—求值—输出循环。

Number (数字)

Boolean (布尔)

Object (对象)

Array (数组)

String (字符串)

Undefined

Null (空)

Undefined类型只有一个值,即特殊的Undefined,是使用var申明变量但没有对其初始化时还这个值就是Undefined。

案例演示1:

申明一个变量但是不初始化

演示案例2:

不声明直接输出值(报错)

null类型

它是第二个只有一个值的数据类型。从逻辑角度来说,它表示一个空指针(引用对象指向它的实际值)所以这也是使用typeof操作符检测null会返回object时候的原因

案例一

上述操作

建议:如果定义某些变量,将来用于存储对象类型,最好var cart=null;

这样我们就可以直接检查null就知道该对象时候被保存过其他对象

注意点:

Undefined是由null类型派生而来的

演示派生

尽管他们同出一门,但是他们的用处是完全不一样的,例如,无论什么情况下我们都没必要把一个值设置为undefined,但是我们在设定一个变量将来用于保存对象时候会尽可能的把这个变量设置为null

Boolean类型是使用比较多的一种类型,只有两个值,真和假,用于判断true -1 false -0

注意他和0和1并不是一回事,(虽然我们在将值转换为Number类型的时候他是这么现实的)

注意

区分大小写

我们还可以这样玩:

var message="hello world";

var messageBoolean=Boolean(message);--转型函数

String 非空字符串-true 空字符串--false

Number 任何非零数值--true 0-false

有时候我们可以直接做验证

案例看用户是否输入

Number

常用进制----2 8 10 16

最基本的主旨字面量格式是十进制数字

var num=100;

除了十进制意外还可以表示更多 的进制数值

var num=070----第一位开头必须是0//8 数值第一位0

079---无效的八进制

var num=0xA;/16 0-15 0-9 A B C D E F

var num=0x1f;

//考虑这厮是在做什么的

toFiexd();

浮点类型--小数

var num=1.1/0.1/.1---最后不推荐

由于保存浮点类型的内存空间是保持整数类型的两倍,所以如果小数点后没有数值将自动转换为整数类型保存

对于那些极大或者极小的数值,可以用e来表示(科学计数法),表述数值等于e前面的数值成衣10的指数次幂

var floatNum=3.125e7——3.125x10^7

浮点类型的最高精度是17位小数,但是在计算时候的精确度远远不如整数

例如0.1+0.2=?0.05+0.25?

所以不要去测试某个特定的浮点数值

这由于IEEE754浮点数值的计算通病

案例 最大最小取值范围

结论,并不能表示所有的取值范围,那么当他的数值范围被超过了之后怎么办呢?

当超过这个数值的时候将自动转为infinity(无穷大的范围)

案例,测试无穷大

当某个数值为无穷大的时候那么该值将无法继续参加下一次的计算,因此无穷大值是不能够参加计算的数值,要想确定某个值是否为无穷大我们可以使用isFinite(方法)

nan 非数值not a number操作

这个值用于表示一个本来要返回数值的操作数未返回数值的 操作

例如任何数除以0的情况

它与任何值都不想等,包括本身

针对这个特性提出了isNaN()这个方法

案例

NaN 10 “10” "hello" true

赋值转换

三个比较重要的函数转换数值

Number() parseInt()--确定待转换的值为整数 parseFloat()

Number函数转换规则

true -1 false -0

null--0

undefined--nan

如果是字符串

如果只是数字直接转化

如果有小数点,转换为浮点型

如果有16进制,则转为对应的十进制

如果字符串为空的,则转为0

不包括上面的则转换为NaN

由于number转换过程中比较复杂,推荐使用parseInt()

解决了字符串和数字混合在一起的麻烦 数字要在前

语句

if

do-while

while

for

//for-in// 数组详细讲解

swith分支--等值判断

函数

函数,在C语言之类的过程式语言中,是顶级的实体,

而在Java/C++之类的面向对象的语言中,则被对象包装起来,

一般称为对象的方法。而在JavaScript中,

函数本身与其他任何的内置对象在低位上是没有任何区别的,

也就是说,函数本身也是对象

javaScript创建函数的方法

1:function([parameters]){functionbody}

2:var fun=function(){}--指派一个变量名给匿名函数的方式来定义它

函数的参数

在JavaScript中,函数的参数是比较有意思的,

比如,你可以将任意多的参数传递给一个函数,

即使这个函数声明时并未制定形式参数

案例——测试用户传入参数与否

如果没有传入参数,则不理会参数部位,如果传入了参数,但是没有定义参数,则使用arguments[下标]来使用参数

作用域的概念在几乎所有的主流语言中都有体现,在JavaScript中,则有其特殊性:JavaScript中的变量作用域为函数体内有效,而无块作用域,

函数没有重载的概念,只有覆盖的概念

js返回值

联系题1:

学校组织运动会,要求成绩在10S以内则进入决赛,男子进男子组,女子进女子组

var score=7;

var gender=1;

if(score<=10){

if(gender==1){

console.log("hh");

}else{

console.log("rr");

}

}

else{

console.log("nn!");

}

有1、2、3、4个数字,能组成多少个互不相同且无重复数字的三位数?都是多少?

for(var a=1;a<=4;a++){

for(var b=1;b<=4;b++){

for(var c=1;c<=4;c++){

if(a!=b&&a!=c&&b!=c){

console.log(a+''+b+''+c);

}

}

}

}

输入某年某月某日,判断这一天是这一年的第几天?//闰年和平年

var today=new Date();

var year=today.getYear();

var month=today.getMonth()+1;

var day=today.getDate();

var sum=0;

switch(month){

case 12 : sum+=30;

case 11 : sum+=31;

case 10 : sum+=30;

case 9 : sum+=31;

case 8 : sum+=31;

case 7 : sum+=30;

case 6 : sum+=31;

case 5 : sum+=30;

case 4 : sum+=31;

case 3 : sum+=28;

case 2 : sum+=31;

case 1 : sum+=day;

}

if(month>2){

if(year%4==0&&year%100!=0 || year%400==0){

sum=sum+1;

}

}

console.log(sum);

输入三个整数x,y,z,请把这三个数由小到大输出。

var num1=10;

var num2=8;

var num3=20;

var temp;

if(num1>num2){

temp=num1;

num1=num2;

num2=temp;

}

if(num1>num3){

temp=num1;

num1=num3;

num3=temp;

}

if(num2>num3){

temp=num2;

num2=num3;

num3=temp;

}

console.log(num1+','+num2+','+num3)

输出9*9口诀。

for(var i=1;i<=9;i++){

for(var j=1;j<=i;j++){

console.log(j+'*'+i+'='+i*j);

}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: