JavaScript数组的增删改查、函数及作用域详解

 更新时间:2025年08月04日 10:08:11   作者:波波鱼દ ᵕ̈ ૩ ​​​  
在JavaScript中作用域和作用域链是理解代码执行和变量访问的关键概念,它们决定了变量和函数在代码中的可见性和生命周期,这篇文章主要介绍了JavaScript数组的增删改查、函数及作用域的相关资料,需要的朋友可以参考下

一.操作数组

1.改

2.增

  • arr.push(新增的内容):将一个或多个元素添加到数组的结尾
  • arr.unshift(新增的内容):方法将一个或多个元素添加到数组的开头,并返回该数组的长度

3.删除

  • arr.pop():方法从数组中删除最后一个元素,不带参数,并返回元素的值
  • arr.shift():方法从数组中删除第一个元素,并返回元素的值
  • arr.splice(start,deleteCount):start--起始位置,deleteCount--删除元素的个数(不写的话默认全部删除)

二.函数

1.函数的使用

先声明后调用

a.声明语法

function 函数名(){
   函数体
}

b.命名规范

  • 和变量名基本一致
  • 尽量小驼峰
  • 前缀应该为动词
  • 常用的动词约定
动词含义
can

判断是否可执行某个动作

has判断是否含义某个值
is

判断是否为某个值

get获取某个值
set设置某个值
load加载某些数据

c.调用语法

函数不调用自己不执行

函数名()

d.函数传参

(1)声明语法

function 函数名(参数列表){
   函数体
}
//如
function getSum(num1,num2){
   document.write(num1+num2)
}
  • 形参:声明函数写在函数右括号里的
  • 实参:调用函数时写在函数名的右括号里的
  • 形参理解为在函数中声明的变量,实参理解为给这个变量赋值
  • 开发中保持形参和实参的个数一致

(2)函数返回值

//当函数需要返回数据出去时,用return关键字
return 数据
  •  有些函数有返回值,有些没有返回值
  • return后面的数据不能换行写
  • 没有值,默认返回的是undefined
  • 返回多个数据时可以使用数组的形式返回

(3)函数注意点

  • 函数名相同时,就近原则,后面的函数会覆盖前面的函数 
  • 在JS中形参和实参的个数可以不一致(形参过多--自动填上undefined;实参过多--多余的实参被忽略,函数内部有一个arguments,里面装着所有的实参)
  • 一旦碰到return就不会执行了,所以结束用return

2.匿名函数

函数可以分为:具名函数+匿名函数

a.没有名字的函数,无法直接使用

b.使用方式

(1)函数表达式

let fn=function(){
//函数体
}
fn()//调用函数
  • 具名函数可以在函数声明调用 (调用可以写到任意位置)
  • 函数表达式要先声明

(2)立即执行函数

//方式1--将匿名函数整个直接使用小括号包起来,然后直接小括号调用
(function (){console.log(11)})();

//方式2--调用之后再用一个小括号全部括起来
(function(){console.log(11)}());

//不需要调用立即执行
  •  避免全局变量之间的污染
  • 不需要额外调用
  • 多个立即执行函数之间要用分号隔开 

三.作用域

1.所用到的名字是有可用性的代码范围.简称作用域

2.组成

a.全局作用域:,整个script标签包含的是全局作用域

b.局部作用域:函数作用域,跳出函数后不能使用

c.全局变量:函数外的let的变量

d.局部变量:函数内的let的变量

3.变量的特殊情况

  • 函数没有声明,直接赋值,就当做全局变量(强烈不允许)
  • 函数内部的形参可以看作函数的局部变量

4.变量的访问原则

  • 只要是代码,就至少有一个作用域
  • 写在函数内部的局部作用域
  • 如果函数中还有函数,那么在这个作用域中就可以诞生一个作用域
  • 在能够访问到的情况下,先局部,局部没有找全局

四.逻辑运算符里的短路

1.短路

只存在于&&和||中,当满足一定条件会让右边代码不执行

符号短路条件
&&左边为false就短路
||左边为true就短路

0、''、undefined、null、false、NaN转换为布尔值之后都是false,其余为true

总结

到此这篇关于JavaScript数组的增删改查、函数及作用域的文章就介绍到这了,更多相关JS数组增删改查函数作用域内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

最新评论