1、Switch语句 语法结构 switch(变量) { case 情况1: //符合情况1,执行下面代码 Js代码; break; ...//如果执行代码,则结束循环 case 情况2: js 代码; break; default: //不符合上面所有情况,执行下面代码 ...Js中的数组是将任意数据类型,放在一起按照一定顺序排练的集合 (1)、数组的两种定义方式 Var ary=new Array() 创建对象的方式 Var ary1=[]; (2)、...var ary = [123, 56, 343]; var ary2 = ary.join("ad") //在数组中间加入字符 alert(ary2); 10、函数(方法)定义 通过 function...函数名() {} 定义函数 // 定义 function a() { alert("你好"); } // 调用 a();
(一) 数组 1 //创建数组 2 var the_array = [1,2,3,4,'5'] 3 4 console.log(the_array[0]) //读取索引为0的数据 5 the_array...[5] = '赋值' //写数据 6 7 //在数组末尾添加一个元素,,允许添加多个数据,例如:the_array.push('1','2') 8 the_array.push('末尾添加一个数据...') 9 console.log(the_array) 10 //pop删除数组末尾的数据并返回,和PYTHON列表的POP类似(不同的是JS只能删除末尾的数据) 11 //另外还有shift()和unshift...(二) 函数调用和方法调用 1 //定义一个函数 2 function f(x,y) { 3 return x*y 4 } 5 //调用函数 6 var x = f(1,2) 7...1 //通过构造函数定义类 2 //这里遵循一个常见的编程约定,定义构造函数即是定义类,并且类名首字母大写 3 //而普通的函数和方法都是首字母小写 4 function People(pename
len) { return []; } if (size > len) { return [list]; } // 最终返回数组
1. arguments 介绍 2. arguments 转为数组 3. 箭头函数中没有 arguments 1. arguments 介绍 众所周知,js 是一门非常灵活的语言。...当我们在 js 中调用一个函数时,经常会给函数传递一些参数,js 把调用函数时传入的全部实参存储到一个叫做 arguments 的类数组对象里面 arguments 是一个类数组对象,不是一个真正的数组...', 'css', 'js']) 通过打印结果可以发现,arguments 的原型是 Object,而数组的原型是 Array 那么关于 arguments 是什么 ?...箭头函数中没有 arguments arguments 只存在于普通函数中,而在箭头函数中是不存在的 下面代码抛出错误异常:Uncaught ReferenceError: arguments is not...defined const arrow = () => { console.log(arguments);}arrow('html', 'css', 'js') 箭头函数中虽然没有 arguments
参考答案: 1.map // map // 作用:对数组进行遍历 // 返回值:新的数组 // 是否改变原有数组:不会 var arr = [2, 5, 3, 4]; var ret = arr.map...; }); console.log(ret); //[3,6,4,5] console.log(arr); //[2,5,3,4] 2.forEach // forEach 方法 // 作用:遍历数组的每一项...// 返回值:undefined // 是否改变原有数组:不会 var arr = [2, 5, 3, 4]; var ret = arr.forEach(function(value) {...); // 24 console.log(arr); // [1, 2, 3, 4] 4.filter // filter 过滤 // 作用: 筛选一部分元素 // 返回值: 一个满足筛选条件的新数组...// 是否改变原有数组:不会 var arr = [2, 5, 3, 4]; var ret = arr.filter(function(value) { return value > 3;
document.write("用age进行排序,获得的最后一个元素的name是:【"+data[2].name+"】") 29 说明:createCompareFun()函数内部...,嵌套一个内部函数,函数作为值被return返回, 内部函数传两个参数,并通过[]讲createCompareFun()函数的propertyName属性解析出来,在通过常规比较函数进行判断、比较。...在data中,定义了一个有三个元素的对象数组,最后调用createCompareFun()函数,并根据自己需要比较的属性来传参,函数对数组进行排序。得到比较的结果。...再加一个普通的比较函数 1 function compare(value1,value2){ 2 if(value1>value2
1.对象转数组 var obj = {name:”张三”,name:”李四”,name:”王五”}; var arr = []; arr = Object.values(obj) //obj就被转换成数组了...2.数组转对象 var obj={}; var arr = []; for(key in arr) { obj[key] = arr[key] //上面的对象obj会被这里新转换的替换 } 3.获取对象长度...对象的长度不能用.length获取,用js原生的Object.keys可以获取到 var obj = {‘ww’:’11’,’ee’:’22}; var arr = Object.keys
在js中,对数组的操作是比较常见的,有时候,我们需要模拟栈和队列的特性才能实现需求,今天来给大家用通俗易懂、简洁明了的几行文字,来告诉大家栈和队列的几个函数,如何快速记住。...js中没有专门栈和队列类型,其实都是用数组模拟的 栈:一端封闭,只能从另一端进出的数组 FILO(first in last out) 先进的后出 栈进出分为两种: 结尾出入栈:...从结尾入队列: arr.push(值) 从开头出队列: var first=arr.shift() 何时使用队列: 希望按照先来后到的顺序使用数据时 函数速记...: pop()与shift()都是删除 pop()删除数组中的最后一个元素,并返回该元素 shift()删除数组中的第一个元素,并返回该元素 push()与unshift()都是插入 push()添加一个或多个新元素到数组的结尾...,返回数组长度 unshift()添加一个或多个新元素到数组的开头,返回数组长度 shift与unshift都是开头,pop和push都是结尾 即 :单词短的为删除, 单词长的为插入,
020: JS数组的高阶函数——基础篇 1.什么是高阶函数 概念非常简单,如下: 一个函数就可以接收另一个函数作为参数或者返回值为一个函数, 这种函数就称之为高阶函数。 那对应到数组中有哪些方法呢?...2.数组中的高阶函数 1.map 参数:接受两个参数,一个是回调函数,一个是回调函数的this值(可选)。 其中,回调函数被默认传入三个值,依次为当前元素、当前索引、整个数组。...创建一个新数组,其结果是该数组中的每个元素都调用一个提供的函数后返回的结果 对原来的数组没有影响 let nums = [1, 2, 3]; let obj = {val: 5}; let newNums...2. reduce 参数: 接收两个参数,一个为回调函数,另一个为初始值。回调函数中三个默认参数,依次为积累值、当前值、整个数组。...filter方法返回值为一个新的数组,这个数组里面包含参数里面所有被保留的项。
==01-数组== 1.声明一个数组:var 数组名 = [元素1,元素2,元素3…………] 数组名其实就是变量名,只是习惯上称之为数组名 元素其实就是数组中保存的数据,只是习惯上称之为元素 2.获取数组中某一个数据....length 2.修改数组的长度会改变数组的元素数量:数组名.length = 值 3.删除数组的最后一个元素:数组名.length-- 1.4-数组遍历 1.数组的遍历:获取数组中每一个元素的值,称之为遍历该数组...,没有元素 数组练习 翻转数组 斐波那契数列 循环嵌套 嵌套循环执行的总次数 = 外层循环执行次数 * 内层循环执行次数 利用循环嵌套打印图案 利用循环嵌套打印九九乘法表 杨辉三角 02-函数 2.1-...自调用函数 1.什么是自调用函数:函数自己调用自己 最常见的:匿名函数自调用 2.自调用函数作用 开辟作用域,js中只有函数才可以开辟作用域 3.匿名函数自调用语法:( function(){} )...() 将整个函数使用小括号包裹,然后在后面再加上小括号调用 //补充:其实有名字的函数也可以自己调用自己,只是比较少见 03-对象(语法学习) 3.1-对象介绍 对象作用:一个变量存储多个数据 对象与数组异同点
数组的浅拷贝, 可用concat、slice返回一个新数组的特性来实现拷贝 var arr = ['old', 1, true, null, undefined]; var new_arr = arr.concat...source.a.b = 10; console.log(source); // { a: { b: 10 } }; console.log(target); // { a: { b: 10 } }; 但是如果数组嵌套了对象或者数组的话用...,就会拷贝一份,互不影响,而如果是对象或者数组,就会只拷贝对象和数组的引用,这样我们无论在新旧数组进行了修改,两者都会发生变化。...数组的深拷贝 方法一:JSON.stringify()不仅可拷贝数组还能拷贝对象(但不能拷贝函数,也不能解决循环引用问题) var arr = ['old', 1, true, ['old1', 'old2...下面是深拷贝一个通用方法,实现思路:拷贝的时候判断属性值的类型,如果是对象,继续递归调用深拷贝函数 var deepCopy = function(target) { // 只拷贝对象 if (typeof
flat函数 - 数组扁平化 考虑我们有如下一个数组 const arr = [1, 2, [3, 4], [5, 6, [7, 8]]] 这个数组有很多层,我们现在需要将它变成一层的应该怎么做呢?...initVal) => { const startVal = initVal || []; return arr.reduce((prevRes, item) => { // 如果里层还是数组...initVal) => { const startVal = initVal || []; return arr.reduce((prevRes, item) => { // 如果里层还是数组...柯里化就是将一个接收多个参数的函数转化为一系列使用一个参数的函数的技术。...} else { // 如果参数不够,继续接收参数 return (...args2) => { // 注意executeFun接收的参数是平铺的,需要将数组解构
今天睡前看到小组群里贴了这么一张图,印象中曾经面试的时候好像也是遇到过,对于大佬们来说这肯定是很基础的一道题,在此分享给正在学习前端和正在面试的小伙伴们。
本文介绍js数组添加数据的三种方法:1、结尾添加push()方法;2、头部添加unshift() 方法;3、向/从数组指定位置添加/删除项目,然后返回被删除的项目splice() 方法。...要添加到数组的第一个元素。 b:可选。要添加到数组的第二个元素。 c:可选。可添加多个元素。 3、返回值 把指定的值添加到数组后的新长度。...向数组添加的第一个元素。 b:可选。向数组添加的第二个元素。 c:可选。可添加若干个元素。 3、返回值 arrayObject 的新长度。...整数,规定添加/删除项目的位置,使用负数可从数组结尾处规定位置。 b:必需。要删除的项目数量。如果设置为 0,则不会删除项目。 item1,…..,itemX:可选。向数组添加的新项目。...tony alert(arr.splice(1,0,’tony’)) //返回值为空 alert(arr) // smile,tony,2,3,marie 以上就是js数组添加数据的四种方法,大家可以根据在不同的位置添加数据选择不同的方法哦
var data = [ { name: "明天", age: "25" }, { name: "明天", age: "25" }, ...
3.js 删除数组几种方法 var arr=['a','b','c']; 若要删除其中的'b',有两种方法: 1)delete方法:delete arr[1] 这种方式数组长度不变,此时arr[1]变为...了 结果数组变成arr:'a','d','e','c' 另外,JavaScript通过设置数组的length属性来截断数组,是惟一一种缩短数组长度的方法。... * 返回:在原数组上修改数组 */ //经常用的是通过遍历,重构数组....事实上,可以自己为数组增加一个删除方法(注意,这里指的是将数组的某一项真正的从数组成员中移除)。或许,会想到用循环来为数组重新赋值,这样做当然可以,但效率很低。...,这个新数组是由两个或更多数组组合而成的。
什么是数组? 数组就是用来存储一组数据的东西。 注意:数组不是基本数据类型,他是引用数据类型。 简称对象类型。 问题?为什么呢? 因为他的元素代表类一个一个对象啊。 问题?...怎么创建一个数组? 函数哪里是大写的A哈。写小写的会错的啊。 数组呢? 比如插入与修改与删除与查询数组。 let arr=new Array(); arr[0]=666;//插入数据 arr[0]=999;//修改数组
1)原理:遍历数组,参数为一个回调callback函数,回调函数有三个参数: element:数组当前项的值 index:数组当前项的索引(可选) array:数组对象本身(可选) thisArg:当执行回调...,对数组的每个值执行函数操作,并把结果返回新数组 1)原理:遍历数组,对函数的每个值执行回调函数,返回值组成一个新数组。...原数组不变 2)函数参数: element:数组当前项的值 index:数组当前项的索引(可选) array:数组对象本身(可选) thisArg:执行 callback 函数时使用的this 值(可选...,对数组每一个元素执行callback函数,并将满足条件的值返回新数组 1)原理:遍历数组,对数组每一个元素执行callback函数,并将满足条件的值返回新数组。...原数组不变 2)函数参数: element:数组当前项的值 index:数组当前项的索引(可选) array:数组对象本身(可选) thisArg:执行 callback 函数时使用的this 值(可选
数组元素求和求平均值 let sum = 0 let ave = 0 let a = [2,6,1,7,4] for(i = 0 ; i < 5 ;...a[i] } ave = sum / 5 document.write(sum+'') document.write(ave) 数组求最大值和最小值...min) { min = a[i] } } document.write(max + '' + min) 数组筛选...要求 将数组 [2, 0, 6, 1, 77, 0, 52, 0, 25, 7] 中大于等于 10 的元素选出来,放入新数组 代码 let a = [2, 0, 6, 1, 77, 0, 52, 0,...0 要求 将数组 [2, 0, 6, 1, 77, 0, 52, 0, 25, 7] 中的 0 去掉后,形成一个不包含 0 的新数组 代码 let a = [2, 0, 6, 1, 77, 0, 52,
map()方法接受一个函数作为参数。该函数调用时,map()方法向它传入三个参数:当前成员、当前位置和数组本身。...如果数组有空位,map()方法的回调函数在这个位置不会执行,会跳过数组的空位。...forEach()的用法与map()方法一致,参数是一个函数,该函数同样接受三个参数:当前值、当前位置、整个数组。...filter() filter()方法用于过滤数组成员,满足条件的成员组成一个新数组返回。 它的参数是一个函数,所有数组成员依次执行该函数,返回结果为true的成员组成一个新数组返回。...reduce()的参数是一个函数,数组每个成员都会依次执行这个函数。如果数组有 n 个成员,这个参数函数就会执行 n - 1 次。 第一次执行:a是数组的第一个成员1,b是数组的第二个成员2。
领取专属 10元无门槛券
手把手带您无忧上云