ARTICLE DETAIL

资讯详情

深耕网站建设、视觉设计与SEO优化的一线实战洞察。

【js】JavaScript基础(一)

【js】JavaScript基础(一)

1、js执行-轮转时间片

2、浏览器组成=shell+内核部分

  • 主流浏览器         内核
  • IE                         trident
  • Chrome                webkit/blink
  • firefox                   Gecko
  • Opera                   presto
  • Safari                   webkit
  • 不同浏览器使用不同的javaScript引擎

            chrome =>  v8

            Firefox  => OdinMonkey(奥丁猴)

            safri      => JSCore

            IE浏览器=>Chakra(查克拉)

3、js引入方式

页面内嵌和外部引用,外部引用更符合目前web标准

4、变量

变量声明与赋值

var a = 111

命名规则

  1. 变量名必须以英文字母、_、$开头
  2. 变量名可以包括英文字母、_、$、数字
  3. 不可以用系统的关键字、保留字作为变量名

关键字与保留字

常见关键字

保留字

变量命名:

  1. 驼峰命名:第一个单词以小写字母开始;第二个单词的首字母大写或每一个单词的首字母都采用大写。
  2. 匈牙利命名:开头字母用变量类型的缩写,其余部分用变量的英文或英文的缩写,要求单词第一个字母大写
  3. 下划线命名:通过下画线连接多个单词。

5、数据类型

原始值

number类型表示数字类型,用于存储数字。数字可分为整型( int )和浮点型( float ),整型用于表示整数,浮点型用于表示小数;

string:string类型表示字符串类型,字符串是由Unicode字符集子集构成的序列,在JavaScript中用来表示文本的数据类型。

boolean:表示布尔值类型,布尔值表示真假值,只有两个可选值,即真值( true )和假值( false )。

object:表示对象类型,对象是各种值的集合。

undefined:表示未定义类型,如果var关键字声明一个变量,但并没有对其进行赋值,则无法判断变量的数据类型,此时变量数据类型是undefined

null:表示空类型,表示当前为空值

引用值

array object function ..date RegExp

6、类型转换

在JavaScript中改变数据类型的方式有显式类型转换和隐式类型转换两种方式。

显示类型转换是通过具体的方法,手动的进行转换的方式。Number()方法是把变量转成数字类型;String()方法是把变量转换成字符串类型;Boolean()方法是把变量转换成布尔值类型。

var foo = '1';
Number(foo);    //1
typeof Number(foo);  //number

 隐式类型转换是通过运算的方式,自动的进行转换的方式。

类型比较:== 与 ===

其中==运算符左右变量进行比较时,值相同,类型可以不同;而===运算符左右变量进行比较时,值相同而且类型也要相同。

还有几个特殊的比较,undefined与null比较时会返回true;与NaN比较时,则会返回false。

注意,NaN与任何值比较都会返回false,包括它自身。这也属于JavaScript历史原因,当时的语法不够严谨,延续至今。JavaScript语言是一门极其灵活的语言,在很多地方不严谨,需要更多的实践与总结。

undefined == null;   //true
undefined === null;   //false
NaN == NaN;     //false
2 == '2';   //true
2 === '2';   //false

7、算术运算符

javaScript 分为九种,赋值顺序自右向左,运算顺序,自左向右。

自增运算符( ++ )和自减运算符( -- )是对数值进行加1或减1的操作,会改变原始数值的大小。 

var foo = 1;
var bar = 1;
foo++;    //1
++bar;    //2

8、赋值运算符

赋值运算符分为简单赋值运算符和复合赋值运算符两种。

简单赋值运算符将赋值运算符( = )右边表达式的值保存到左边的变量中。

复合赋值运算符结合了其他操作(如算术运算操作)和赋值操作。

9、比较运算符

比较运算符用于比较两个值,返回一个布尔值,表示是否满足比较条件。满足条件返回true,不满足条件返回false。

10、逻辑运算符

逻辑运算符一般用于执行布尔运算,通常和比较运算符一起用来表示复杂比较运算,逻辑运算涉及的变量通常不止一个,而且常用于if、while和for语句中。常见的逻辑运算符有&&(逻辑与)运算符、||(逻辑或)运算符和!(逻辑非)运算符三种。

&&表示逻辑与,若两边表达式的值都为true,则返回true;任意一个值为false,则返回false。

| | 表示逻辑或,只有表达式的值都为false,才返回false,否则返回true。

!表示逻辑非,若表达式的值为true,则返回false;若表达式的值为false,则返回true。

11、条件运算符

条件 ? 语句1 : 语句2;

其中,如果条件为true,则表达式的值使用“语句1”的值;如果条件为false,则表达式的值使用“语句2”的值,?:运算符需要有三个操作数,因此一般也称为三目运算。

1.if判断即if语句,是选择结构中运用最广泛的语句,一般可分为单向选择、双向选择和多项选择三种形式。

if( 逻辑条件 ){
语句1;
}
语句2;if( 逻辑条件 ){
语句1;
}
else{
语句2;
}if( 逻辑条件 1){
语句1;
}
else  if(逻辑条件2){
语句2;
}
else{语句3;
}

2. switch判断即switch语句,也是选择结构中很常用的语句,用于将一个表达式同多个值进行比较,并根据比较结果选择执行语句。

switch(表达式 ){case  取值1: 
语句1;
break;
case  取值2:
语句2;
break;default:
语句3;
}

 3.while循环即while语句,是循环结构中常见的语句,也是比较简单的循环语句。

while( 逻辑条件 ){
语句1;
}
语句2;

 4.for循环即for语句,也是循环结构中常见的语句,同时也是使用最为广泛的循环语句。

for(初始值;逻辑条件;循环后操作 ){
语句1;
}
语句2;

5.break语句用于跳出整体循环,停止后续循环操作。

 for( var i=0; i<5; i++ ){if(i==3){break;             //跳出整个循环}console.log( i );}
// 首先定义了一个for循环,并且根据条件会执行5次循环体,但是当i自增到3时,会触发循环体中if语句的执行,即触发break语句,break在循环中表示跳出整个循环,后续的代码及后续的循环都会立即停止,因此,只会触发输出0、1、2三个结果。

6.continue语句与break语句类似,但continue语句只跳出本次循环,不影响后续循环。

for( var i=0; i<5; i++ ){if(i==2){continue;      //跳出当前循环}console.log( i );}
// 首先定义一个for循环,然后根据条件会执行5次循环体,但是当i自增到2时,会触发循环体中if语句的执行,即触发continue语句,continue在循环中表示跳出当前循环,后续的代码不会执行,但是后续的循环还会继续,因此,会触发输出0、1、3、4四个结果,而2并没有触发。
返回列表