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

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)

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

上一篇:yii2之DetailView小部件


下一篇:【算法·Algorithms】算法目录