当前位置: 首页 > news >正文

分享题解05:数组元素的平方(数组遍历的方法)

描述

为数组 arr 中的每个元素求二次方。不要直接修改数组 arr,结果返回新的数组

示例

输入:[1, 2, 3, 4]
输出:[1, 4, 9, 16]

代码输入:

var arr = [1, 2, 3, 4, 5];
console.log(square(arr));

解法一:for遍历

这种方法对于有一定语言基础的人,可能是最容易想到的了,思路比较简单,直白。

第一种: for 遍历
function square(arr) {var newArr = [];for (var i = 0; i < arr.length; i++) {newArr.push(arr[i] * arr[i]);newArr[i] = Math.pow(arr[i],2);}return newArr;
}

解法二:利用 map 遍历

// 第二种:map 遍历
function square(arr) {return arr.map(e => e*e)
}

解法三:利用 for Each遍历

// 第三种:forEach
function square(arr) {var newArr = [];arr.forEach(element => {return newArr.push(element*element)});return newArr;
}

解法四:利用 for in 遍历

// 第四种: for in
function square(arr) {var newArr = [];for(let i in arr){newArr.push(arr[i] * arr[i])};return newArr;
}

解法四:利用 for of 遍历

// 第五种: for of
function square(arr) {var newArr = [];for(let i of arr){newArr.push(arr[i] * arr[i])};return newArr;      
}// 输出结果为:[ 4, 9, 16, 25, NaN ]

我接着就打印了数组长度以及循环 i ,

function square(arr) {var newArr = [];console.log(arr.length);  // 5for(let i of arr){console.log(i);       // 1 2 3 4 5newArr.push(arr[i] * arr[i])};return newArr;
}

问题就显而易见了,for of 的循环是从 1 开始,我们需要的是从 0 开始的,改进方式:将 i 改写为 i - 1

function square(arr) {var newArr = [];for(let i of arr){newArr.push(arr[i-1] * arr[i-1])};return newArr;      
}
// 结果正确

总结

  • 之前又一遍博客也讲述了循环的方式,提及了 inof 的区别,但是理解的比较简单,也没有仔细比较他们的差别,今天这个题目对遍历有一个较为不错的对比 。
  • 关于 inof的用法,还是推荐对于数组(类数组)使用 in,对于对象使用 of,这么做也是根据他们索引值的起始值不同进行的区分。
  • 想到了之前的一个面试题: inof 的区别,当时解答说的是没啥区别,现在看来或许答案就在此处。

以上分享是我个人所学心得,仅供参考;
不当之处,欢迎大家指点、交流。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.exyb.cn/news/show-35519.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈,一经查实,立即删除!

Spring框架的入门知识点

一、概念 1.一款轻量级的JAVAEE解决方案&#xff0c;众多优秀设计模式的组合&#xff1b; 2.作用&#xff08;目的&#xff09;&#xff1a;解耦合&#xff0c;目的是为了解决企业级应用开发的业务逻辑层和其他各层的耦合问题。 3. Spring 的核心思想是&#xff1a; IOC:控制…...

实现批量自动部署Linux操作系统--UP楠哥

#实战描述&#xff1a; UPWEN公司所服务的用户IT环境中有很多的Linux系统&#xff0c;品种也五花八门&#xff0c;有RHEL、Centos、OpenSUSE甚至还有测试环境使用的RockyLinux。当有大量的计算机需要同时安装操作系统需求的时候&#xff0c;如果通过光驱的方式一个个安装&#…...

HDU 1536 S-Nim

1536 #include<bits/stdc.h> using namespace std; int s[110],sg[10010]; int k; int SG(int x){if(sg[x]!-1)return sg[x];bool vis[110];memset(vis,0,sizeof(vis));for(int i0;i<k;i){if(x>s[i]){SG(x-s[i]);vis[sg[x-s[i]]]1;}}for(int i0;;i){if(!vis[i]){...

Redis 内存淘汰机制

Redis 内存淘汰机制 【问题一】 过期字典的方法很好&#xff0c;但还是有可能会出问题。因为定期删除和惰性删除还是有可能造成大量过期的 key 没被删除&#xff0c;堆积在内存中。非常容易就 内存溢出了 Out of memory。 【问题二】 如何保证 Redis 中的数据都是热点数据 &am…...

2021年Java开发爆款推荐!docker部署tomcat

一.java基础面试知识点 java中和equals和hashCode的区别 int、char、long各占多少字节数 int与integer的区别 探探对java多态的理解 String、StringBuffer、StringBuilder区别 什么是内部类&#xff1f;内部类的作用 抽象类和接口区别 抽象类的意义 抽象类与接口的应用…...

常见各类算法

冒泡&#xff1a; 1、依次比较相邻的元素&#xff0c;如果第一个比第二个大&#xff0c;则交换位置&#xff1b; 2、从第一个交换到最后一个时&#xff0c;最后的元素一定是最大的&#xff1b; 3、然后对所有的元素都执行此操作O(n^2)快排&#xff1a; 1、选择一个基准&#…...

错题小笔记13——序列化、serialVisionUID的作用

序列化&#xff1a;将数据结构转换称为二进制数据流或者文本流的过程。序列化后的数据方便在网络上传输和在硬盘上存储。 反序列化&#xff1a;是将二进制数据流或者文本流转换称为易于处理和阅读的数据结构的过程。本质其实还是一种协议&#xff0c;一种数据格式&#xff0c;…...

HTTP与HTTPS的区别

HTTP与HTTPS的区别 HTTP &#xff08;HyperText Transfer Protocol&#xff1a;超文本传输协议&#xff09; HTTP&#xff08;HyperText Transfer Protocol&#xff1a;超文本传输协议&#xff09;是一种用于分布式、协作式和超媒体信息系统的应用层协议。 简单来说就是一种发…...

贝叶斯分类器

贝叶斯理论 连续、离散特征处理 朴素贝叶斯分类器 半朴素贝叶斯分类器 贝叶斯理论 在我们学习概率论课程中&#xff0c;基本上处处暗含着贝叶斯理论的身影。贝叶斯理论简单说可以是一种概率转化的方法&#xff0c;将一种较难求得的相关概率转化为几个较容易求得的概率乘积…...

阿里P8大牛亲自讲解!java静态变量和实例变量

Redis主从复制 概念 Redis的主从复制概念和MySQL的主从复制大概类似。一台主机master&#xff0c;一台从机slaver。master主机数据更新后根据配置和策略&#xff0c;自动同步到slaver从机&#xff0c;Master以写为主&#xff0c;Slave以读为主。 主要用途 读写分离&#xff1…...

5. 断路器hystrix dashboard turbine

hystrix使用 feign中使用 hystrix feign:hystrix:enabled: true #必须配置Component public class EurekaClientHystrix implements EurekaClientFeign{}使用feign配置了&#xff0c;这些&#xff0c;即可进行回退 Feign 的起步依赖中已经包含Hystrix依赖&#xff0c;所以只…...

使用朴素贝叶斯过滤垃圾邮件

示例&#xff1a;使用朴素贝叶斯对电子邮件进行分类(1) 收集数据&#xff1a;提供文本文件。(2) 准备数据&#xff1a;将文本文件解析成词条向量。 (3) 分析数据&#xff1a;检查词条确保解析的正确性。(4) 训练算法&#xff1a;使用我们之前建立的trainNB0()函数。(5) 测试算法…...

Angular中NgOnInit和Constructor方法之间的主要区别

参考链接&#xff1a;https://chudovo.com/main-differences-between-ngoninit-and-constructor-methods-in-angular/...

redis中的RDB和AOF

redis提供两种方式进行持久化&#xff0c;一种是RDB持久化&#xff08;原理是将Reids在内存中的数据库记录定时dump到磁盘上的RDB持久化&#xff09;&#xff0c;另外一种是AOF持久化&#xff08;原理是将Reids的操作日志以追加的方式写入文件&#xff09;。那么这两种持久化方…...

阿里云泄露信息、腾讯视频崩了,抖音使用IPFS存储!IPFS将开启一个更安全的互联网存储时代!

西部世界XLMidsummer了解到&#xff0c;近日&#xff0c;网络流传一份浙江省通信管理局7月5日对投诉人的答复函&#xff0c;核实称此前阿里云计算有限公司未经用户同意擅自将用户留存在的注册信息泄露给第三方合作公司。8月23日&#xff0c;浙江省通信管理局相关负责人独家回应…...

djanog导出csv文件

def xlsx_response(x_io):res HttpResponse()res["Content-Type"] "text/csv"res["Content-Disposition"] filename"aa.xlsx"res.write(x_io.getvalue())return resif query_params.get(export):values_list_order queryset.valu...

post与get请求的区别以及转发和重定向的区别

post 与get请求的额区别 比较角度GETPOST请求的数据是否在url上显示会 url?参数名参数值&#xff08;不安全&#xff09;不会 在Form Data中&#xff08;安全&#xff09;是否是表单的默认提交方式是不是执行效率高低&#xff08;相对于GET&#xff09;提交数据大小最大是102…...

弘辽科技:成为拼多多商家要什么要求?收费吗?

现在也有不少人想要入驻拼多多&#xff0c;但是想要成为拼多多的商家也需要满足对应的要求&#xff0c;同时也想要了解成为拼多多商家是否需要收费&#xff0c;我马上就来给各位卖家们介绍。 拼多多商家入驻平台分四种店铺&#xff0c;这里小编介绍一下旗舰店、专营店入驻基本条…...

Xshell中鼠标选中内容自动换行ctrl+c解决办法

之前一直使用xshell来调试嵌入式终端&#xff0c;觉得蛮好用的&#xff0c;在昨天&#xff0c;突然发现&#xff0c;莫名的就出现ctrlc的命令&#xff0c;经分析&#xff0c;当使用鼠标选中内容后就自动出现&#xff0c;仔细思考这一两天的过程&#xff0c;并没有得到好的信息&…...

超11万字整理完k8s的核心组件pod全部功能详解,理论代码超详细,建议跟着做一遍实验【含 label 标签使用】【1】

文章目录说明【必看】第二篇文章标题和链接第二篇文章标题和链接第三篇文章标题和链接创建及删除pod创建一个pod-1的文件夹和命名空间镜像准备【node节点执行】创建pod【虚拟机】方式1&#xff1a;命令行的方式【不建议】默认创建加imagePullPolicy参数创建说明方式2&#xff1…...

数学备忘录

一、矩阵论、代数学 二、几何学 齐次坐标介绍...

在pycharm中显示数据库表结构

view–tool Windows–database...

JS - 设配设备的的平滑滚动

最近项目需要做一个H5页面的问答类互动&#xff0c;类似向上向下的滚动效果&#xff0c;所以做个总结 一、 CSS 使用CSS的scroll-behavior&#xff0c;可以达到比较平滑的滚动&#xff0c;有过渡效果 scroll-behavior: auto | smooth | inherit | unset// html <div id&q…...

linux work工作队列

linux work工作队列 1.工作队列的介绍 工作队列常用来在特定的时间间隔或者其他情况来执行一些动作&#xff0c;每个工作队列都有一个或者多个的线程&#xff08;通常来说都是一个线程&#xff09;&#xff0c;在每个 线程中执行相应的任务。 2.工作队列的使用 1.work的相…...

[DebugJournal]bat批处理文件遇到的问题及解决方法

问题1&#xff1a;在运行bat文件时&#xff0c;for循环内部的变量无法用echo打印&#xff0c;总是显示回显状态或者将echo后面的内容当作字符输出。 代码及双击bat运行结果如下&#xff1a; 注意&#xff1a;命令行和bat的循环变量写法有差异&#xff0c;命令行循环变量为%i&a…...

vue import错误Module build failed: Error: No PostCSS Config found in解决办法

问题描述&#xff1a; 我是在VUE框架是用import ‘ant-design-vue/dist/antd.css’;引入ant-design-vue的css遇到的&#xff0c;试过很多方法都解决不了&#xff0c;最后解决办法是&#xff1a; 把ant-design-vue直接在vue项目的根目录安装解决问题。...

3D点云系列(一)点云介绍

点云数据简介 点云数据&#xff08;point cloud data&#xff09;是指在一个三维坐标系统中的一组向量的集合。扫描资料以点的形式记录&#xff0c;每一个点包含有三维坐标&#xff0c;有些可能含有颜色信息&#xff08;RGB&#xff09;或反射强度信息&#xff08;Intensity&a…...

初学java可能会遇到的问题

每个单词的大小写不能出现问题&#xff0c; java对大小写十分敏感&#xff1b; 尽量使用英文单词&#xff1b; 文件名和包含main方法的类名必须保持一致&#xff0c;并且首字母大写&#xff1b; 语法的标点符号必须使用英文的。...

【LeetCode刷题日记01】Two Sum

一、题目 Given an array of integers nums and an integer target, return indices of the two numbers such that they add up to target. You may assume that each input would have exactly one solution, and you may not use the same element twice. You can return th…...

数据结构 study 5: typedef 结构体 数组 作为形参

代码 /* c1.h (程序名) */ #include<string.h> #include<ctype.h> #include<malloc.h> /* malloc()等 */ #include<limits.h> /* INT_MAX等 */ #include<stdio.h> /* EOF(^Z或F6),NULL */ #include<stdlib.h> /* atoi() */ #include <…...

dbc2000 注册机|dbc2000 注册码注册机下载

点击下载来源&#xff1a;dbc2000 注册机 dbc2000 注册机是同名源程序软件的注册机软件&#xff0c;该源程序软件是一款应用于数据库搭建以及数据写入的数据库架设工具&#xff0c;它拥有强大的数据写入功能&#xff0c;在作为应用程序使用时&#xff0c;它不仅可以充当数据属性…...

秋招面经第八弹:网易二面-数据开发工程师

秋招第八弹&#xff1a;网易二面-数据开发工程师 写在最前&#xff1a;秋招以来一直在冲&#xff0c;因为事情比较多&#xff0c;对于笔试面试一直没有复盘&#xff0c;现在靠仅存的记忆把面试的一些问题记录下来&#xff0c;尽可能记录出能回忆到的问题&#xff0c;但可能记的…...

安卓课程格子APP

https://download.csdn.net/download/weixin_57836618/73810452 功能演示&#xff1a; 查看所有课程 点击主页面空白处即可添加课程 添加课程之后查看课程 查看双周课程 查看单周课程 6.查看课程详情...

强化学习——格子世界

强化学习——格子世界 项目源码地址&#xff1a;https://gitee.com/infiniteStars/machine-learning-experiment 1. 实验内容 2. 实验代码 import numpy as np import matplotlib.pyplot as plt from matplotlib.table import Table from xml.dom.minidom import Document #手…...

华为机试 - 跳格子游戏

目录 题目描述 输入描述 输出描述 用例 题目解析 算法源码 题目描述 地上共有N个格子&#xff0c;你需要跳完地上所有的格子&#xff0c;但是格子间是有强依赖关系的&#xff0c;跳完前一个格子后&#xff0c;后续的格子才会被开启&#xff0c;格子间的依赖关系由多组st…...

php 爬课程表信息,Ruby爬取教务系统生成课程表

我为什么要虐自己最近觉得课程格子广告越来越多&#xff0c;乱七八糟的东西越来越多&#xff0c;完全失去了一开始的存在价值&#xff0c;并且没有电脑端app&#xff0c;想查看课程必须拿出手机&#xff0c;而我使用电脑频率要比手机高&#xff0c;所以才有了折腾的动力。于是我…...

android 课程表 ui,UICollectionViewLayout实现课程表布局

因为项目中有课程表的相关模块&#xff0c;第一时间想到用UICollectionView。然而后期的需求越来越复杂&#xff0c;每个格子需要展示的内容越来越多&#xff0c;所以不得不寻找合适的解决方案。最后发现自定义UICollectionViewLayout可以实现我的需求。先放效果图&#xff1a;…...

Android自定义View课程表,Android 自定义View课程表表格

自己闲下来时间写的一个课表控件使用的自定义LinearLayout 里面View都是用代码实现的 最终效果如下图 写的可能有问题希望多多指点创建一个自定义LinearLayout 控件用来装载课程的信息和课程的周数 和节数大概的布局三这样的根据上面的看来觉得总体布局我分了两个 上面的星期是…...

java课程设计设计_java课程设计

1. 团队课程设计博客链接https://www.cnblogs.com/choco1ate/p/12172223.html2.本组课题及本人任务本组课题&#xff1a;泡泡堂(炸弹人)游戏本人任务&#xff1a;Box类(游戏地图中的每个方格)Bomb类(游戏过程中的)游戏玩家输赢信息的文件储存3.需求分析Box类&#xff1a;该类为…...

《课程格子》的一个笔试题目

题目如下&#xff0c;感觉很适合喜欢琢磨的程序员&#xff0c;也是考验你编码风格的时候。 Lets make a tower defense game&#xff08;塔防游戏):1. You have 1 tower, with H health and D dps(damage per second).2. There are n attackers, each with h_i health and d_i …...

Android仿照超级课程表 or 课程格子 一键提取课表功能(方正系统)

参考文章http://blog.csdn.net/sbsujjbcy ,本文仿照‘ 安卓弟 提供的android 项目实战——打造超级课程表一键提取课表功能文章&#xff0c;对他的代码进行了修改和补充&#xff0c;为什么要修改呢&#xff1f;原因是安卓弟的那个源码版本过于老旧&#xff0c;很多方法已经过…...

超声加工技术的研究现状及其发展趋势

2006-04-23 20:36:09 超声加工技术的研究现状及其发展趋势超声加工技术的研究现状及其发展趋势 作者&#xff1a;曹凤国 张勤俭北京市电加工研究所北京精密特种加工技术研究中心 摘要&#xff1a;结合近年来超声加工技术的发展状况&#xff0c;综述了超声振动系统的研究进展和超…...

穿戴设备 之主芯片市场

小编语&#xff1a;在这些厂商名单中能够看到中国厂商君正和锐迪科的名字小编颇感欣慰&#xff0c;不管芯片真实研发水平是否能和国际大厂抗衡&#xff0c;小编觉得国内业者都要感谢国产芯片公司的努力和付出&#xff0c;因为它们的出现在很大程度上制衡了进口芯片的价格&#…...

Seata中的事务分组与集群

一、什么是事务分组和集群 事务分组:可以按微服务的需要,在应用程序(客户端)中对自行定义的事务进行分组,每组取一个名字,这个事务分组仅仅是seata的逻辑资源上的,其实是不存在的。 集群:seata服务端一个或多个节点组成的cluster(集群),应用程序(客户端)使用时需要指定…...

【学习笔记】小白学习python爬虫之信息标记

一、信息组织方式 HTML(Hyper Text Markup Languange) HTML是www的信息组织方式 以<>…</>的形式&#xff0c;将超文本&#xff08;图片&#xff0c;视频&#xff0c;声音&#xff09;陷入到文本中 二、 信息标记的三种方法 1.XML&#xff08;eXtensible Marku…...

全国各地城市FM调频电台频率列表(上海北京广州深圳长沙武汉重庆)

长沙 [FM] CH00 08760,中央电台经济之声 CH01 10770,中央电台音乐之声 CH02 08930,湖南电台音乐频道 CH03 10220,长广星空调频 CH04 09550,金鹰之声电台 CH05 10280,湖南电台卫星频道 CH06 10170,长沙城市之音 CH07 09180,湖南电台交通频道 CH08 10500,长沙电台星沙之…...

李彦宏说互联网思维已过时,AI可以根本上变革交通、城市、农业和医疗

刚刚&#xff0c;李彦宏披露了百度AI最新进展。 包括现场发布了中国首款L4无人驾驶量产乘用车——红旗、让蓝翔瑟瑟发抖的无人挖掘机、无人车自动泊车、AI公园…… 同时&#xff0c;百度还透露了AI与交通、城市、农业、工业以及医疗等行业如何进一步结合。 “互联网思维已经过时…...

2022年最新广播电视广告报价(共23份)

合集名称&#xff1a;2022年最新广播电视广告报价 数量&#xff1a;23份 具体内容&#xff1a; 2022安徽卫视价格表.jpg 2022年 CCTV-1新闻联播《天气预报》 广告价格.jpg 2022年cctv-11戏曲频道广告刊例表 2022年中央广播电视总台环球资讯广告刊例&#xff08;全国区域&…...

让天下没有拥堵的城市:看“城市大脑”如何打造“智慧交通”

对于数以亿计的白领一族和城市居民来说&#xff0c;拥堵不堪的路况和漫长的通勤时间&#xff0c;绝对是每天最令人烦心的事情之一。 然而&#xff0c;随着大数据、AI人工智能等创新技术的发展&#xff0c;城市拥堵这个棘手的大难题&#xff0c;未来很可能将不再给人们带来困扰。…...

智慧交通迎爆发期 中国电科全面布局

近日国家发展改革委和交通运输部联合发布了《推进“互联网”便捷交通促进智能交通发展的实施方案》&#xff0c;提出“十三五”及以后较长一段时期&#xff0c;应将推动“互联网”便捷交通、智能交通发展作为我国交通运输的战略重点。 在业内人士看来&#xff0c;智慧交通产业将…...