js中的简单数据类型和复杂数据类型 js中的简单数据类型和复杂数据类型

js中的简单数据类型和复杂数据类型

 

Js的数据类型可以分为简单数据类型和复杂数据类型

简单数据类型有5种,Number,String,Boolean,undefined,null

1.Number数字类型 ,在控制台显示颜色位蓝色

整数,浮点数,科学计数法

NaN是Number类型,但是NaN != NaN

2.String字符串型 , 控制台显示黑色

<1>.单/双引号包裹,成对出现

<2>.str.length 获取字符串的长度

<3>.转义字符 \’ , \” , \n(换行)

3.Boolean 布尔类型  true/false  控制台位蓝色

  1. Undefined   控制台位灰色
  2. Null  控制台为灰色

数据类型的转换

1.转换为Number

 parseInt()取整,不要小数

parseFloat()取小数,遇到非数字停止

Number()整体判断,有非数字出现,返回NaN

+ (最常用,代表正号)var sum = +prompt(‘请输入数字’);

2.转换为String

String()

str.toString();

拼串  age+””;

3.转换为Boolean

Boolean();

!!num;

转成false的几个特殊值:undefined ,null ,NaN ,0 , “” , false

4.NaN说明:表示一个无法用数字表示的数字

             不等于任何值,包括它自己

                      类型是Number

复杂数据类型: 数组,函数,对象

函数

目的:开发中有很多重复的需求,赋值粘贴会冗余代码

定义:对一段重复代码的封装,一次声明,多次使用

函数的声明和调用:

  1. 声明:  function  函数名() {……}
  2. 调用: 函数名();

函数的参数

  1. 形参:函数声明时,定义在函数名()内的参数,就叫形参

形式参数:没有值和类型(默认),------在调用函数时,通过传递过来的实参值决定,占位置的作用

  1. 实参: 在函数调用时,传递过去的参数,就叫做实参

实际参数,有具体的值和类型

作用:在函数调用时,将值传给形参

注意:简单数据类型传递的是值,复杂数据类型传递的是地址

关于函数参数传递的补充说明:

参数(实参,形参)一一对应

(1).多传

后面的会被忽略,但实际传过去了,存在函数内部内置的arguments数组中

(2)少传

没有接收到的形参就是undefined

函数的返回值

如果希望函数的执行有结果,通过return 返回值

return 后面的代码不执行,是函数的结束语句

return 返回岁的值就是这个函数调用的结果

函数的三要素:

函数名,函数参数,函数返回值

作用域及其变量(变量起作用的区域)

1.全局作用域:script标签内,函数外

全局变量: 在全局作用域声明的变量,可以使用在任何地方

2.局部作用域:函数内的区域(会有多个函数,即多个局部作用域,相互之间没有关系)

       局部变量: 在局部作用域声明的变量,作用于当前函数内

隐式全局变量

给一个从未声明过(全局和局部都没有声明)的变量直接赋值,就是隐式全局变量  

   

声明函数的两种表达方式

  1. 函数声明式

function  fn(){……}

书写时可以先调用,后声明

  1. 函数表达式

Var fn= function() {……}

必须先声明,后调用

匿名函数

  1. 函数表达式

var fn= function(){…}

  1. 匿名函数自调用

(function() {……})();

可以防止全局变量的污染

预解析

在代码执行时,让函数声明和变量声明提升

  1. 变量,函数同名,函数优先级高,覆盖变量
  2. 变量提升,不赋值
  3. 函数提升,不调用
  4. 同名变量,第一个生效
  5. 同名函数,后面覆盖前面

Js的数据类型可以分为简单数据类型和复杂数据类型

简单数据类型有5种,Number,String,Boolean,undefined,null

1.Number数字类型 ,在控制台显示颜色位蓝色

整数,浮点数,科学计数法

NaN是Number类型,但是NaN != NaN

2.String字符串型 , 控制台显示黑色

<1>.单/双引号包裹,成对出现

<2>.str.length 获取字符串的长度

<3>.转义字符 \’ , \” , \n(换行)

3.Boolean 布尔类型  true/false  控制台位蓝色

  1. Undefined   控制台位灰色
  2. Null  控制台为灰色

数据类型的转换

1.转换为Number

 parseInt()取整,不要小数

parseFloat()取小数,遇到非数字停止

Number()整体判断,有非数字出现,返回NaN

+ (最常用,代表正号)var sum = +prompt(‘请输入数字’);

2.转换为String

String()

str.toString();

拼串  age+””;

3.转换为Boolean

Boolean();

!!num;

转成false的几个特殊值:undefined ,null ,NaN ,0 , “” , false

4.NaN说明:表示一个无法用数字表示的数字

             不等于任何值,包括它自己

                      类型是Number

复杂数据类型: 数组,函数,对象

函数

目的:开发中有很多重复的需求,赋值粘贴会冗余代码

定义:对一段重复代码的封装,一次声明,多次使用

函数的声明和调用:

  1. 声明:  function  函数名() {……}
  2. 调用: 函数名();

函数的参数

  1. 形参:函数声明时,定义在函数名()内的参数,就叫形参

形式参数:没有值和类型(默认),------在调用函数时,通过传递过来的实参值决定,占位置的作用

  1. 实参: 在函数调用时,传递过去的参数,就叫做实参

实际参数,有具体的值和类型

作用:在函数调用时,将值传给形参

注意:简单数据类型传递的是值,复杂数据类型传递的是地址

关于函数参数传递的补充说明:

参数(实参,形参)一一对应

(1).多传

后面的会被忽略,但实际传过去了,存在函数内部内置的arguments数组中

(2)少传

没有接收到的形参就是undefined

函数的返回值

如果希望函数的执行有结果,通过return 返回值

return 后面的代码不执行,是函数的结束语句

return 返回岁的值就是这个函数调用的结果

函数的三要素:

函数名,函数参数,函数返回值

作用域及其变量(变量起作用的区域)

1.全局作用域:script标签内,函数外

全局变量: 在全局作用域声明的变量,可以使用在任何地方

2.局部作用域:函数内的区域(会有多个函数,即多个局部作用域,相互之间没有关系)

       局部变量: 在局部作用域声明的变量,作用于当前函数内

隐式全局变量

给一个从未声明过(全局和局部都没有声明)的变量直接赋值,就是隐式全局变量  

   

声明函数的两种表达方式

  1. 函数声明式

function  fn(){……}

书写时可以先调用,后声明

  1. 函数表达式

Var fn= function() {……}

必须先声明,后调用

匿名函数

  1. 函数表达式

var fn= function(){…}

  1. 匿名函数自调用

(function() {……})();

可以防止全局变量的污染

预解析

在代码执行时,让函数声明和变量声明提升

  1. 变量,函数同名,函数优先级高,覆盖变量
  2. 变量提升,不赋值
  3. 函数提升,不调用
  4. 同名变量,第一个生效
  5. 同名函数,后面覆盖前面

猜你喜欢

转载自www.cnblogs.com/xjt31/p/12939629.html
今日推荐