欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

JavaScript_01简介,基本语法,运算符

程序员文章站 2022-03-31 17:15:28
JavaScript_01简介,基本语法,运算符,和java语言进行对比总结 ......

 

javascript(不是jscript和scriptease)

 

1.js分为内部引用和外部引用,无论是内部引用还是外部引用,都可以放在html(除标签内)的任意位置,但是定义的位置会影响执行的顺序

 

2.js中变量是弱类型变量,不需要声明变量类型,java是强类型变量,

 

3.js中变量定义格式:var name=...;

 

4.js中包含:原始数据类型和引用数据类型

 

5.js数据基本类型(js中称为原始数据类型,类似于java中基本数据类型):

         number

         string

         boolean

         null

         undefined

 

6.js中的一个不算bug的小bug

         null的数据类型是object

 

7.js运算符和java差不多,只是多了一个===全等于

         js中=-号有些特殊用途

 

         在js中,如果运算数不是运算符所要求的类型,那么js引擎会自动的将运算数进行类型转换

                   注意:*其他类型转number:

                            *string转number:按照字面值转换,如果字面值不是或不全是数字,则转换为nan(不是数字的数字)

                            *boolean转number:true转为1,false转为0

 

   测试:

    

////////////////////////测试码1/////////////////////////////

var n1=+"123";//将123字符串自动转换成数字123
 

var n2=-"123";


var n3=+true; //布尔类型如果是true-->1  false转成0


var n4=+"abc"; //如果字面值不是或不全是数字,则转换为nan(不是数字的数字)

//nan not a number

document.write("n1:"+n1+"  类型:"+typeof(n1));//number 123

document.write("<hr>");

document.write("n2:"+n2+"  类型:"+typeof(n1));//number -123

document.write("<hr>");

document.write("n3:"+n3+"  类型:"+typeof(n1));//number 1

document.write("<hr>");

document.write("n4:"+n4+"  类型:"+typeof(n1));//number nan


/*

* n1:123 类型:number

* n2:-123 类型:number

* n3:1 类型:number

* n4:nan 类型:number */

////////////////////////结束1/////////////////////////////

 

 

 

 

比较运算符

         1.基本和java相同

         2.多了一个===全等于,作用:首先判断类型是否相等,类型不相等,直接返回false,如果类型相等,在比较值是否相等.

         3.比较运算符比较

                   如果类型相同,直接进行比较,

                   类型不相同,先转换类型,在进行比较

 

 

逻辑运算符

         和java一样,只有!有些区别

         !boolean 和java中是一样的

         !其他类型有些区别

         !其他类型,会先将其它类型转换成布尔类型,

         转换规则:

         1.number:0或nan为假,其它为真

         2.string:""为假(空字符串为假) ,其它为真

         3.null&undefined:全部为假

         4.对象:只要对象不为null,就是真,否则为假

 

//1.语句以;结尾,如果一行只有一条语句,可以没有;,但是建议尽量加上;

/*

* 2.变量的定义使用var关键字,但是定义变量也可以不使用var,

*   *用var定义的变量是局部变量

*   *不用var定义的变量是全局变量

*   但是尽量还是定义局部变量,加上var,尽量按照java的语法来使用

* */

 

 

js中流程控制语句

         注意:和java中很相似,

         唯一不同的是,switch

         java中switch中只能是byte short int string,enum

         js中可以是任意类型

 

         java中定义变量是指定类型(强类型)

         js中定义变量是var,(弱类型)

 

 

 

 

 //////////////////////////-----------------------------------------------------/////////////////////////////

群雄争霸,

javascript、jscript和scriptease三分天下,

天下混乱,统一的声音越来越大

 

ecmascript站出一统天下,制定统一的规则,

javascript===ecmascript+javascript对象(dom,bom)

///////////////////////////###############################//////////////////////////////////