JavaScript知识点1
目录
1.JavaScript中常用的数组方法有哪些?
2.JavaScript的同源策略?
3.JavaScript中的 NaN 是什么?
4.JavaScript中的split、slice、splice函数区别?
1.JavaScript中常用的数组方法有哪些?
在 JavaScript 中,数组方法非常丰富,以下是一些常用的方法:
push()
: 向数组末尾添加一个或多个元素,并返回新的数组长度。pop()
: 移除数组末尾的元素,并返回该元素。shift()
: 移除数组开头的元素,并返回该元素。unshift()
: 向数组开头添加一个或多个元素,并返回新的数组长度。concat()
: 合并两个或多个数组,并返回一个新数组。join()
: 将数组中的所有元素连接成一个字符串。slice()
: 返回数组的一个片段,新数组从指定的起始索引到结束索引(不包括结束索引)之间的元素。splice()
: 从数组中添加或删除元素,并返回被删除的元素。forEach()
: 对数组的每个元素执行一次提供的函数。map()
: 创建一个新数组,其结果是对原数组的每个元素应用提供的函数后的返回值。filter()
: 创建一个新数组,其包含通过提供函数测试的所有元素。reduce()
: 对数组中的所有元素应用一个函数,从而将其减少为单一值。find()
: 返回数组中第一个满足提供函数的元素。some()
: 测试数组中是否有任意一个元素满足提供函数的条件。every()
: 测试数组中是否所有元素都满足提供函数的条件。sort()
: 对数组中的元素进行排序,并返回排序后的数组。reverse()
: 反转数组中元素的顺序,并返回数组。
2.JavaScript的同源策略?
同源策略(Same-Origin Policy)是浏览器用于隔离不同源的网页以增强安全性的机制。它要求来自不同源的网页不能相互访问彼此的资源。同源是指协议、域名和端口号都相同。
- 协议: 比如
http
和https
是不同的协议。 - 域名: 比如
example.com
和example.org
是不同的域名。 - 端口号: 比如
http://example.com:80
和http://example.com:8080
使用了不同的端口。
同源策略主要影响以下几种操作:
- DOM访问: 脚本只能访问相同源文档的 DOM。
- AJAX 请求: 脚本只能向相同源的服务器发起请求。
- Cookies: 只能访问同源的 cookies。
3.JavaScript中的 NaN 是什么?
NaN
(Not-a-Number)是一个特殊的值,表示某个值不是一个合法的数字。NaN
是 JavaScript 中的一个全局属性,其类型是 Number
,但其值不是一个有效的数字。常见情况下,NaN
出现在数学运算失败或不能定义的情况下,例如:
let result = 0 / 0; // 结果是 NaN
let invalidNumber = Number("abc"); // 结果是 NaN
需要注意的是,NaN
与任何值(包括 NaN
自身)的比较结果都是 false
,这意味着 NaN === NaN
结果为 false
。检测 NaN
通常使用 Number.isNaN()
方法:
Number.isNaN(result); // 返回 true
4.JavaScript中的split、slice、splice函数区别?
(1)split(separator, limit)
: 用于将字符串分割成一个数组。
- 参数:
separator
(可选):指定分隔符,可以是字符串或正则表达式。limit
(可选):限制分割的数量。
- 返回值: 分割后的字符串数组。
- 例子:let str = "a,b,c";
let arr = str.split(","); // ["a", "b", "c"]
(2)slice(start, end)
: 用于从数组中提取一个片段,返回一个新的数组,不改变原数组。
- 参数:
start
:起始索引(包含),默认为0
。end
(可选):结束索引(不包含),默认为数组的长度。
- 返回值: 从
start
到end
之间的元素组成的新数组。 - 例子: let arr = [1, 2, 3, 4, 5];
let newArr = arr.slice(1, 4); // [2, 3, 4]
(3)splice(start, deleteCount, item1, item2, ...)
: 用于从数组中添加或删除元素,改变原数组。
- 参数:
start
:起始索引。deleteCount
(可选):要删除的元素个数。如果为0
,则不删除。item1, item2, ...
(可选):要添加的新元素。
- 返回值: 被删除的元素数组(如果有删除的话)。
- 例子:let arr = [1, 2, 3, 4, 5];
let removed = arr.splice(2, 2, 6, 7); // [3, 4], arr 变为 [1, 2, 6, 7, 5]
split
用于字符串,slice
用于数组(返回片段),splice
用于数组(添加或删除元素)。
相关文章:

JavaScript知识点1
目录 1.JavaScript中常用的数组方法有哪些? 2.JavaScript的同源策略? 3.JavaScript中的 NaN 是什么? 4.JavaScript中的split、slice、splice函数区别? 1.JavaScript中常用的数组方法有哪些? 在 JavaScript 中&…...

51单片机个人学习笔记11(AT24C02-I2C总线)
前言 本篇文章属于STC89C52单片机(以下简称单片机)的学习笔记,来源于B站教学视频。下面是这位up主的视频链接。本文为个人学习笔记,只能做参考,细节方面建议观看视频,肯定受益匪浅。 [1-1] 课程简介_哔哩…...

创建Java项目,可实现main方法运行,实现对性能数据的处理
1、Android Studio无法执行Java类的main方法问题及解决方法 Android Studio无法执行Java类的main方法问题及解决方法_delegatedbuild-CSDN博客 D:\workspaces\performanceTools\.idea 文件夹下,gardle.xml ,添加依赖 <option name"delegatedBuild"…...

JavaWeb(后端)
MVC MVC 就是 Model View Controller 的缩写,属于一种软件架构设计模式一种思想,把我们的项目分为控制器(Controller)、模型(Model)、视图(view)三个部分,model就是处理…...

828华为云征文 | 华为云Flexusx实例,高效部署Servas书签管理工具的优选平台
前言 华为云Flexus X实例,Servas书签管理工具部署的优选平台!828节日特惠,让高效管理您的知识宝藏触手可及。Flexus X实例以其卓越的算力、灵活的资源配置和智能调优技术,为Servas提供了稳定、高效的运行环境。无论是快速访问、安…...

分治法和动态规划法
一、分治法(Divide and Conquer) 定义 分治法是一种将大问题分解成若干个小问题,递归地解决这些小问题,然后将这些小问题的解合并起来得到原问题的解的算法策略。(子问题之间相互独立) 基本步骤 1.分解…...

【FreeRL】我的深度学习库构建思想
文章目录 前言参考python环境效果已复现结果 综述DQN.py(主要)算法实现参数修改细节实现显示训练,保存训练 Buffer.pyevaluate.pylearning_curves 前言 代码实现在:https://github.com/wild-firefox/FreeRL 欢迎star 参考 动手学强化学习e…...

Docker部署nginx容器无法访问80端口
问题说明 在阿里云ECS服务器上部署一台CentOS服务器,然后在里面安装了docker服务。用docker部署了nginx,开启docker中的nginx服务,映射宿主机端口80 把阿里云服务器上面的安全组放开了80端口 但是还是无法访问nginx的80web界面 问题分析 查…...

Python语言开发学习之使用Python预测天气
什么是wttr? 使用Python预测天气的第一步,我们要了解wttr是什么。wttr.in是一个面向控制台的天气预报服务,它支持各种信息表示方法,如面向终端的ANSI序列(用于控制台HTTP客户端(curl、httpie或wget))、HTML(用于web浏览器)或PNG(…...

minio实现大文件断点续传
最近工作中遇到一个需求,用户需要上传大文件几百M,为了更好的用户体验,需要支持断点续传,秒传,上传进度条等功能。需求如下: 方案有两种: 第一种:前端直接将整个大文件丢到后端&…...

Qt绘制动态仪表(模仿汽车仪表指针、故障灯)
背景: 项目需要,可能需要做一些仪表显示。此篇除了介绍实现方法,还要说明心路历程。对我而言,重要的是心理,而不是技术。写下来也是自勉。 本人起初心里是比较抵触的,从业20多年了,深知所谓界…...

【视频教程】GEE遥感云大数据在林业中的应用与典型案例实践
近年来遥感技术得到了突飞猛进的发展,航天、航空、临近空间等多遥感平台不断增加,数据的空间、时间、光谱分辨率不断提高,数据量猛增,遥感数据已经越来越具有大数据特征。遥感大数据的出现为相关研究提供了前所未有的机遇…...

【时时三省】c语言例题----华为机试题<字符串排序>
山不在高,有仙则名。水不在深,有龙则灵。 ----CSDN 时时三省 1,题目 HJ14 字符串排序 描述 给定 n 个字符串,请对 n 个字符串按照字典序排列。 数据范围: 1≤n≤1000 1≤n≤1000 ,字符串长度满足 1≤l…...

基于vue框架的城市体育运动交流平台15s43(程序+源码+数据库+调试部署+开发环境)系统界面在最后面。
系统程序文件列表 项目功能:用户,赛事类型,近期赛事,比赛报名,器材类型,器材信息,自由约战,运动队伍 开题报告内容 基于Vue框架的城市体育运动交流平台开题报告 一、项目背景与意义 随着城市化进程的加速和居民健康意识的提升,城市体育运动已成为现代…...

2024年软件测试经典大厂面试题(全3套)【包含答案】
前言 金三银四即将过去,后面迎来的便是金九银十,一直想着说分享一些软件测试的面试题,这段时间做了一些收集和整理,下面共有三篇经典面试题,大家可以试着做一下,答案附在后面,希望能帮助到大家。…...

What is Node.JS and its Pros and Cons
What is Node.JS and its Pros and Cons JavaScript is a client-side development tool. Node.js is a server-side development tool. And it’s only a runtime environment based on Chrome V8 so we don’t write some code in Node.js. Pros: JavaScript on a server …...

TestCraft - GPT支持的测试想法生成器和自动化测试生成器
在当今快速变化的软件开发世界中,自动化测试已成为确保软件质量的关键环节。而随着AI技术的进步,越来越多的工具开始引入人工智能,来辅助生成测试用例和自动化测试脚本。其中,TestCraft,作为一款GPT支持的测试想法生成…...

FreeRTOS内部机制学习04(任务通知和软件定时器)
文章目录 何为任务通知?任务通知使用例子任务通知的优势以及劣势优势劣势 深入源码看看API函数内部干了什么函数的种类函数都做了啥? 软件定时器软件定时器的作用软件定时器内部到底做了什么实现了“闹钟”功能引入守护任务,守护任务做了啥&a…...

华为eNSP :WLAN的配置
一、WLAN的知识点: VLAN配置: VLAN:可以想象成一个大房子(网络)里划分的不同房间(VLAN)。每个房间可以有自己的功能,比如一个用于睡觉(管理),另一…...

中国大数据产业的融资热潮来袭,哪些领域最受资本青睐?
大数据产业是以数据及数据所蕴含的信息价值为核心生产要素,通过数据技术、数据产品、数据服务等形式,使数据与信息价值在各行业经济活动中得到充分释放的赋能型产业。 基于启信产业大脑的海量数据与专业研判模型,本文将从产业图谱、区域分析…...

Unity数据持久化 之 使用Excel.DLL读写Excel表格
本文仅作笔记学习和分享,不用做任何商业用途 本文包括但不限于unity官方手册,unity唐老狮等教程知识,如有不足还请斧正 终于找到一个比较方便容易读表的方式了,以前用json读写excel转的cvs格式文件我怎么使用怎么别扭…...

Linux系统:chown命令
1、命令详解: chown命令用于设置文件所有者和文件关联组的命令,全称为change directory。在Linux当中默认文件均有拥有者,可以利用 chown 将指定文件的拥有者改为指定的用户或组,输入参数时用户可以是用户名或者用户 ID࿰…...

Unity3D ARPG(动作角色扮演游戏)设计与实现详解
动作角色扮演游戏(Action Role-Playing Game, ARPG)结合了传统角色扮演游戏(RPG)的深度与动作游戏(Action Game)的即时反应和流畅战斗体验。Unity3D 作为一款强大的跨平台游戏开发引擎,为开发者…...

Qt实现登录界面
本文基于Qt实现一个简单的登录界面,主要使用到Widget、button、edit等控件,基于自定义的信号槽实现界面的跳转,使用绘图设备添加背景图等。 1. 创建主界面 设计主界面的样式,并添加相关的控件。如下显示: 代码如下&…...

big.LITTLE
big.LITTLE 1 多核异构调度算法 http://www.linaro.org/?sbig.LITTLE http://git.linaro.org https://wiki.linaro.org/Archived%20LSK%20Versions big.LITTLE CPUs can be configured in 2 modes of operation: IKS – In Kernel Switcher (also known as CPU Migration…...

汤臣倍健,三七互娱,得物,顺丰,快手,游卡,oppo,康冠科技,途游游戏,埃科光电25秋招内推
汤臣倍健,三七互娱,得物,顺丰,快手,游卡,oppo,康冠科技,途游游戏,埃科光电25秋招内推 ①得物 【八大职类】技术、供应链、产品、运营、设计、职能、商品研究、风控等大类…...

再谈c++模板
前言 在前面我们曾经简单的介绍过c的模板,但还并不全面,我们通过stl容器的学习加深了我们对c这门语言的理解。那么今天我们就再来谈一谈c模板,对模板再进行一点简单的补充 非类型模板参数 前面我们介绍的是类型模板参数,简单理…...

9.11 codeforces Div 2
文章目录 9.11 Div 2A. Doras Set(删除三个互质数)思路代码 B. Index and Maximum Value(范围加减1求max)思路代码 C. Dora and C(加a/b,最小化极差)思路代码 9.11 Div 2 Dashboard - Codeforces Round 969 (Div. 2) …...

二级菜单的两种思路(完成部分)
第一种 <el-form ref"formRef" :model"form" :rules"rules" label-width"120px"><el-form-item label"类型" prop"type"><el-select v-model"form.type" placeholder"请选择类型&q…...

【机器学习导引】ch2-模型评估与选择
文章目录 经验误差与过拟合 (Empirical error &overfitting)1. **均方误差(Mean Squared Error, MSE)**2. **均方根误差(Root Mean Squared Error, RMSE)**3. **平均绝对误差(Mean Absolute…...