javascript语法函数

javascript 语法

1.javascript 函数、变量和操作符都是区分大小写的。

2.javascript标识符可以包含字母、数字、下划线(_)或美元符($),不能以数字开头。

3.关键字不能用作标识符。

编码习惯

js通常使用camel规则进行标识符书写。在这里插入图片描述

变量定义

1.javascript的变量是松散类型的,所谓松散类型就是用来保存任何类型的数据。

2.定义变量时要使用var操作符(var是关键),后面跟一个变量名(变量名是标识符)。[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Zs993nam-1631873094806)(javascript函数.assets/image-20210322091043981.png)]

数据类型 5+1
number

number类型中的NaN

1.非数值(Not a Number)是一个特殊的值,这个数值表示本来要返回数值的操作数未返回数值的情况

2.任何涉及NaN的操作(NaN + 1)都会返回NaN

3.NaN与任何值都不相等,包括NaN本身
在这里插入图片描述

  1. isNaN()函数 ,这个函数可以接受任何类型的参数,可以帮我们判断该参数是否"不是数值"

    alert(isNaN(NaN));    //true
    alert(isNaN("10"));   //false  数值为10
    alert(isNaN("blue"))  //true   不可以转化成数值  
    alert(isNaN(true))    //false  数值为1
    

Number类型

八进制

八进制值的第一位必须是0,然后是八进制序列(0~7)如果字面值中的数组超出了范围,那么前导0就会被忽略,后面的数值将会被当做十进制解析。

var num = 070   //八进制的 56
var num = 079   //无效八进制数值————解析为十进制79
var num = 08    //无效八进制数值————解析为8
十六进制

十六进制字面值的前两位必须是0x,后跟任何十六进制数字(0~9 和 A~F)其中 A~F阔以大写,也可以小写

var num = 0xA;    //十六进制的10
var num = 0x1f;   //十六进制的31
浮点数值

浮点数值最高精度为17位小数

var num = 0.1;
var num = .1 ;    //解析为0.1————有效,但不推荐
var num = 1. ;    //解析为 1

对于极大或者极小的数值,可以用e表示法(科学计数法)表示

其中e可大写也可小写

var num = 3.21e4   //等于32100
var num = 3.14e-4  //等于0.000314

IEE754数值的浮点计算的通病 : 例:0.1 + 0.2 = 0.30000000000000004

数值范围

Infinity (正无穷) -Infinity (负无穷)

isFinite()函数:这个函数会在参数位于最大和最小数之间返回true

数值转换

number的数据类型转换 Number()、parseInt()、parseFloat()

Number()
parseInt()
parseFloat()
string
undefined

undefined即一个特殊的值,当一个变量声明但未初始化时,就会被赋予undefined值

null

当一个变量是为了保存一个对象,但没办法立即初始化的时候,应该为之分配一个null 值

boolean

boolean的数据类型转换

object

5种基本的数据类型以外,都是对象,比如数组,函数等。

javascript的运算符
看一看

在这里插入图片描述

+Number() !!(Boolean()

在这里插入图片描述

javascript 函数

函数的含义

类似于Java中的方法,是完成特定任务的代码语句块

传统JavaScript函数的两种写法

函数声明提升

1.函数声明提升:定义式函数会预加载,函数的调用在函数定义前和函数定义后都可以。

2.变量式或匿名式,函数调用必须在函数声明之后,否则提示”×× is not a function”

B

变量声明“提升”

javascript的函数定义有个特点,它会先扫描整个函数体的语句,把所有变量的声明“提升”到函数顶部。
在这里插入图片描述

变量的作用域

1.全局变量指在函数外定义的变量;局部变量指在函数内定义的变量。

2.使用范围:全局变量在函数内外均可使用,我们叫全局作用域;局部变量只能在函数内使用,叫局部作用域,也可以叫函数作用域。

3.生命周期:全局变量随网页关闭而消失;局部变量在函数执行完成后消失。

另类的全局变量

*只要省略了var关键字,该变量将被认为是全局变量。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-hhinQ2eg-1631873094821)(javascript函数.assets/image-20210322162305275.png)]

模拟真题

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-YFDg1QE1-1631873094822)(javascript函数.assets/image-20210322162410370.png)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-j3uBtn4U-1631873094823)(javascript函数.assets/image-20210322162432221.png)]

B B

函数变种

1.IIFE:Immediately Invoked Function Expression,意为立即调用的函数表达式,也就是说,声明函数的同时立即调用这个函数。

2.利用匿名函数,减少全局变量的使用,避免“污染”全局作用域

arguments对象

随意的参数

js函数定义时,参数是没有类型声明的,甚至名字还可以重复。

js函数调用时,实参“随意”到根本不关心定义时的形参长什么样,不限制个数,也可以没有;不限制类型,什么都可以。

严格模式 " use strict "

严格模式的作用

1.消除Javascript语法的一些不合理、不严谨之处,减少一些怪异行为;

2.消除代码运行的一些不安全之处,保证代码运行的安全;

3.提高编译器效率,增加运行速度;

4.为未来新版本的Javascript做好铺垫。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值