JavaScript之三:常用类

三,原始类

1> Array类型

特点:

松类型数组,可变长型数组。

也可以在初始化时指定长度,初始化数组元素时填充的都是undefined。

属性:

length:数组长度

方法:

添加:末尾添加一个元素colors[colors.length] = "black";末尾添加一组元素concat(array);指定位置添加splice(fromIndex,0,insertElement0,insertElement1,...)

删除:指定个数删除splice(fromIndex,deleteNum);指定位置删除slice(fromIndex, endIndex)

替换:先删除后添加splice(fromIndex,deleteNum,insertElement0,insertElement1...)

排序:反序reverse();指定排序模式sort(compareFunction)

模仿特定数据结构:栈方法push(),pop();队列方法push(),shift();队列反向操作unshift(),pop()

转字符串:toString(),valueOf()方法会返回以,间隔的元素字符串,可通过join("||")方法改变间隔符。

 

2> RegExp类型

初始化:

var expression = /pattern/flags;

属性:

global,ignoreCase,multiline(前三个是flags),lastIndex(搜索的开始位置),source(表达式字符串);

构造函数属性(会随着执行过程变化):

input(输入字串),lastMatch(最近一次匹配字串),lastParen(最近一次匹配字符),leftContext(匹配字串的左边字串),rightContext(匹配字串的右边字串),multiline,对应简写$_,$&,$+,$`,$',$*,简写需通过[]访问。

方法:

匹配:exec(string)。即使设置了全局匹配,也只返回第一个匹配项,不会返回所有匹配项的集合,要想获得下一个,需要再次调用该方法。因此,每次调用,lastIndex,lastMatch,lastParen,leftContext,rightContext都可能变化。

测试:test(string)。 测试是否匹配。

 

3>Date类型

初始化:

没有参数初始化,时间为当天时间。参数本需要为某时间距1970年的毫秒数。但Date.parse()和Date.UTC()可将特定格式的字符串日期或数字日期转换为该毫秒,并且当参数为这些字符串或数字时,构造函数会自动调用Date.parse()和Date.UTC()先将参数转化为毫秒。

因此可var someDate = new Date("May 25, 2004"),也可var someTime = new Date(2005, 4, 5, 17, 55,55)。注意,月份和小时是以0开始的。

转字符串:

toLocalString()会根据浏览器设置的地区设置返回日期时间;toString()会返回军用格式时间;还有toDateString(),toTimeString(),toLocaleDateString(),toLocaleTimeString(),toUTCString()方法用于输出时间字符串。但是各浏览器实现有所不同,推荐使用getFullYear()/Month/Date()/Day/Hours/Minutes/Seconds获取具体日期数字,自己订制输出格式。

比较:valueOf()则返回毫秒,因此Date可直接用比较操作符比较。

 

4> Math对象

方法:

最大最小:max(),min()

绝对值:abs()

平方根:sqrt()

次幂:pow(num,power)

舍入:ceil(),floor(),round() 分别为向上进位,向下舍位和四舍五入。

随机数:random()随机生成一个介于0到1的随机数。如在lowerValue-upperValue区间生成随机数:Math.floor( Math.random() * (upperValue - lowerValue +1) + lowerValue );

 

5> Function类型

属性:

arguments:是一个类数组对象,包含传入函数中的所有参数。它还包含一个callee的指针属性,反指向该函数,应尽量通过该指针实现递归,因为函数名是可变的。

this:是函数所处作用域。比如在全局作用于中调用函数时,this对象引用就是window。

length:表示函数希望接受的命名参数的个数。

方法:

调用:apply(),call()。需要传递作用域和函数所需的参数。apply()的参数可通过arguments或数组传递;call()的参数必须一个一个传。注意,作用域通常传this,但真正强大的是可借此扩大该函数的作用域。

 

6> 内置对象

特性:

Global对象,俗称“兜底儿对象”,不属于任何对象的属性和方法,都是它的。自身还有isNaN(),isFinite(),parseInt(),parseFloat()等方法,可随时随地调用。访问Global对象可通过window对象,因为浏览器把这些方法都实现到window中了。

方法:

URI编码方法:encodeURI(),encodeURIComponent(),区别是前者将空格替换为%20,后者会将任何非标准字符编码。因此前者用于整个URI,后者用于附加在现有URI的字符串使用。对应解码的是decodeURI(),decodeURIComponent()。escape()和unescape()已被废弃,因为只支持ASCII。

 

URL 只能使用 ASCII 字符集来通过因特网进行发送。由于 URL 常常会包含 ASCII 集合之外的字符,URL 必须转换为有效的 ASCII 格式。

URL 编码使用 "%" 其后跟随两位的十六进制数来替换非 ASCII 字符。URL 不能包含空格。URL 编码通常使用 + 来替换空格。

将字符串当代码一样调用:eval()。要小心,避免直接将用户输入直接调用,会造成代码注入。

 

7> 基本包装类型

特性:

为了便于操作基本类型变量,JavaScript还提供了三个特殊引用类型:Boolean, Number, String。每当读取一个基本类型值的时候,后台就会先创建一个对应的基本包装类型的对象,因此可以调用基本包装类型的方法。当操作完成后,该实例将被销毁。引用类型和基本包装类型的不同就在于对象的生存周期不同。

只有在必要时才显示的创建基本包装类型,因为显示创建后,typeof会返回object,并在转换为Boolean时都是true。

a> Boolean类型

b> Number类型,有toFixed(),toExponential(),toPrecision()方法可将数字转换为字符串。

c> String类型,提供方法:

获取字符:charAt()获取字符;charCodeAt()获取字符码

连接:concat(),通常用+

切割:按个数切割substr(),参数是beginIndex, nums;按位置切割slice(),substring(),参数是beginIndex, endIndex

搜索:从头搜indexOf();从尾搜lastIndexOf()。可以通过参数指定搜索的起始位置

大小写转换:toLowerCase(),toLocaleLowerCase(),toUpperCase(),toLocaleUpperCase()

比较:localeCompare()

支持正则表达式的方法有:

匹配match(expr),返回匹配元素的数组。

搜索search(expr),返回第一个匹配项的索引。

替换replace(expr),如需全局替换,则需要在正则表达式中添加/g。替换字串还可以由匹配出的字串组合而成,如$&(lastMatch),$'(leftContext),$`(rightContext),$n。如果不指定替换字串,还可以制定一个自定义函数function(match, pos, originalText),来具体定制。

分割split(),可通过正则表达式指定分隔符。

VSCode玩转STM32:手把手教你配置EIDE插件与OpenOCD调试(附野火DAP配置文件详解) 本文详细介绍了如何在VSCode中配置EIDE插件与OpenOCD进行STM32开发,特别针对野火DAP调试器提供了配置文件详解。从基础环境搭建到深度调试技巧,帮助开发者高效完成STM32项目开发,实现现代化嵌入式开发工作流。 阅读详情

相关推荐

硬件工程师入门进阶,一文搞懂,看这篇就对了

每家公司的datasheet都有严格的规范,及独特的风格,有时候还会穿插一些原理性的介绍,比如ADI公司的一些ADC/DAC器件资料里面,还会包含AD/DA转换的原理性讲解内容,Datasheet既可以是我们设计上的好帮手,也是学习的好资料。在出货量大的产品中,尽量减少物料种类,比如开头说的,1%的电阻不得不用,那么5%的替换成1%的,物料种类就减少一种,量就大了,能不能争取更优的价格呢?如果说前面学的是内功,那这一关,是招式、是工具的使用,原理图和PCB设计都有对应的工具,教程也很多,且比较容易上手。

一路带飞的博客 5万+

3 javascript 引用类型

一.Object类型 创建Object实例的两种方法: 第一种: var person = new Object(); person.name = "Nicholas"; person.age = 29; 第二种(对象字面量表示法,较为常用): var person = { name : "Nicholas", age : 29 }; 使用对象字面量语法时,属

u013537860的专栏 271

无人机WIFI集群组网技术详解及成本分析

无人机WIFI集群组网技术是指利用无人机作为移动平台,通过集成高性能的WIFI模块,实现多架无人机之间以及无人机与地面控制站之间的无线通信组网。在协议层面,无人机WIFI集群组网需要遵循标准的无线通信协议,如IEEE 802.11系列(即WIFI标准),同时可能还需定制或优化路由协议、媒体访问控制(MAC)协议等,以确保高效、可靠的数据传输。数据安全与隐私保护:无人机集群组网中传输的数据可能涉及敏感信息,需采取加密、认证等安全措施,确保数据传输的安全性和用户隐私的保护。根据性能不同,价格差异较大。

专注多旋翼、复合翼无人机技术研究,从事低空经济行业。 1582

JavaScript包装类、Date类和Math类

包装类 在JS中为我们提供了三个包装类:String()、 Boolean()、 Number() 通过这三个包装类可以创建基本数据类型的对象:但是在实际的开发中不会这么用 var num = new Number(3); var str = new String("hello"); var boolean = new Boolean(true); Date类 日期的对象,在JS中通过Date对象来表示一个时间 创建对象 1、创建一个当前的时间对象 var date = new Date(); 2、创建

weixin_44278828的博客 157

OpenMV模块视觉测距(避障)+颜色识别+TFT-LCD显示(实现原理与代码分析)

上图所示代码实际运行的帧率比较低,主要原因有以下两个:1.硬件问题,博主使用的版本比较低,可以尝试使用高版本OpenMV2.图像滤波问题。之前加入图像滤波是想提高色块识别的准确性,但是相应的运算速度也会下降。

ediykk的博客 1万+

【收藏向】模拟电子技术超强知识点总结 20小时不挂科

模电真的有难度的一门课,一定要好好学… 用的教材是华科康华光版,其他版本教材也可参考,内容是差不多的。 话不多说直接上思维导图干货(后有思维导图高清原图链接) 1 绪论 2 运算放大器 3 二极管及其基本电路 4 场效应管及其放大电路 5 双极结型三极管及其放大电路 三种组态总结看不清,给个特写 发现虽然csdn上传的是原图,但是显示的图片不是特别清晰,在此贴出B站知乎地址,第五章之后的内容都在上面,还可以查看原图 ———————————————————— B站专栏地址(可以点击查看原图) htt

工科狗Niko的博客 1万+

JS 常用的数据类型(三)

object对象数据类型:1.普通对象 2.数组对象

PinkCoder 1067

RK3568平台开发系列讲解(项目篇)手写数字识别

📢 本篇章带大家基于飞桨(PaddlePaddle),完成一个简单的手写数字识别任务。

内核笔记 1182

javascript:类的介绍

javascript:类的介绍一、类的三个部分构造函数内的这是提供是列对象复用的var Book=function(){ this.name="a"; this.age=12; } 构造函数外的直接通过点语法添加的,实例对象访问不到Book.color="red"; 是原型中的实力化对象可以通过其原型链间接访问到,也是为所有实例化对象所共用的Book.prototype.say=fu

华仔而立的博客 458

RK3288芯片MIPI-DSI显示疑难杂症大揭秘:从点不亮到花屏全攻克

本文针对RK3288芯片MIPI-DSI接口常见的显示异常问题进行系统性分析,提出了完整的排查解决方案。硬件方面,重点检查排线连接、电源供应和散热问题;软件方面,强调屏参配置、驱动版本及时序参数的精确调整。通过两个典型案例(点不亮与花屏)具体说明排查流程,并指出未来优化方向应包括提升芯片抗干扰能力、开发智能自适应驱动程序等。该手册为开发者提供了从基础原理到实际问题的全面指导,能有效缩短故障排查时间,确保显示系统稳定运行。

远程部署调试 运行安装 项目调试 二次开发 项目技术新 持续迭代 部分源码免费分享 659

Python 爬虫实战:爬取 GitHub 热门项目(星数 / 语言 / 作者)

本文系统介绍了使用Python爬虫技术获取GitHub热门项目数据的完整方案。通过分析GitHub Trending页面和官方API两种数据源,详细讲解了HTML解析、JSON数据处理、反爬应对策略等关键技术。采用requests、BeautifulSoup、pandas等工具链,实现了项目信息(名称、星数、语言等)的结构化爬取,并配套数据清洗、统计分析及可视化功能。特别强调遵守GitHub API使用规范,包括Token认证、请求频率控制等合规要求。该方案为开发者提供了一种高效、合法的数据采集方法,适用于

2503_91057718的博客 2342

javascript 类的三种成员

实现类的公有成员  前面定义的任何类成员都属于公有成员的范畴,该类的任何实例都对外公开这些属性和方法。  实现类的私有成员  私有成员即在类的内部实现中可以共享的成员,不对外公开。JavaScript中并没有特殊的机制来定义私有成员,但可以用一些技巧来实现这个功能。  这个技巧主要是通过变量的作用域性质来实现的,在JavaScript中,一个函数内部定义的变量称为局

houlc的专栏 892

学Simulink--机器人基础关节控制场景实例:基于Simulink的无刷直流电机(BLDC)关节六步换相位置控制仿真

本文详细介绍了基于Simulink的BLDC六步换相位置控制仿真方法,针对机器人关节的低成本控制需求。重点阐述了霍尔定位、六步换相和位置闭环三大核心原理,通过Simulink建模实现了从霍尔信号处理到位置环控制的全流程。仿真结果表明,该系统可实现0.3°的定位精度和80ms的响应时间,满足教育机器人等应用场景需求。文章还提供了核心代码模块和参数设置方法,并探讨了转矩脉动抑制、无传感器控制等进阶优化方向,为低成本机器人关节驱动提供了实用解决方案。

amy_mhd的博客 152

JavaScript语法基础:深入探索函数、对象与常用类

JavaScript中的函数、对象以及这些常用类是构建各种应用程序的基础。熟练掌握它们的特性和用法,能够让我们在JavaScript的开发中更加得心应手,轻松实现各种复杂的功能需求。

qy_hell的博客 863

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

JavaScript基础探索:函数、对象及常用类

JavaScript 是一门功能强大的编程语言,其函数、对象和常用类(Array、String、Math、Date)为开发者提供了丰富的工具来处理各种任务。希望这篇文章能帮助你更好地理解 JavaScript 的基础,并为你的编程之旅打下坚实的基础。在编程的世界里,JavaScript 是一门非常流行的语言,尤其在前端开发领域。本文将带你深入了解 JavaScript 中的几个核心概念:函数、对象以及常用的类——Array、String、Math 和 Date。字符串是不可变的字符序列,用于表示文本。

2301_81466619的博客 334

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

js基础

  一、JS三个组成部分   ES:ECMAScript语法   DOM:document对象模型 =>通过js代码与页面文档(出现在body中的所有可视化标签)进行交互   BOM:borwser对象模型=>通过js代码与浏览器自带功能进行交互   二、引入方式   行间式   出现在标签中的全局事件属性中   this代表该标签,可以访问全局属性,再访问具体操作对象...

weixin_30797027的博客 59

IMSL CNL 7.0.0 (x86-64)Crack

IMSL CNL 7.0.0 (x86-64)Crack intel的算法库破解文件,这是C++版本的破解文件

js

一.JS三个组成部分 ES: ECMAScript语法 DOM: document对象模型 = >通过js代码与页面文档(出现在body中的所有可视化标签) BOM: borwser对象模型 => 通过js代码与浏览器自带功能进行交互 二.引入方式 行间式 出现在标签中的全局事件属性中 this代表该标签, 可以访问全局属性, 再访问具体操作对象(eg: this.style....

weixin_43183295的博客 155

Web开发基础:JavaScript常用类、面向对象和BOM

项目开发视频: SpringCloud微服务开发入门 手把手开发基于SpringBoot的员工管理系统 亿度云盘~Java小白入门实战 前言 下面介绍下JS中的常用类、面向对象的实现和BOM编程。 常用类 Date类 获得或设置日期或时间 创建方法: var date = new Date(); 常用方法 方法 作用 getYear 获得年 1900年到现在的年数 getMonth 获得月 从0开始 getDate 获得日 getHours 获得小时 getMin

恒哥的博客 354

2024年Web前端最全Web开发基础:JavaScript常用类、面向对象和BOM(1),2024年最新字节面试官你有什么问题想问我

面试题千万不要死记,一定要自己理解,用自己的方式表达出来,在这里预祝各位成功拿下自己心仪的offer。开源分享:【大厂前端面试题解析+核心总结学习笔记+真实项目实战+最新讲解视频】前言下面介绍下JS中的常用类、面向对象的实现和BOM编程。常用类Date类获得或设置日期或时间创建方法:常用方法| 方法 | 作用 || — | — || getYear | 获得年 1900年到现在的年数 || getMonth | 获得月 从0开始 || getDate | 获得日 |

2401_84411767的博客 540

JavaScript语法基础(函数,对象,常用类Array,String,Math和Date)

本章讲述了JavaScript语法基础中的函数,对象,常用类Array,String,Math和Date的含义和使用

2301_82005922的博客 1276

[JavaScript] 常用类

常用类,多了解了解第一章 常用对象2.1 Function对象2.2 Array对象2.3 date对象2.4 Math对象2.5 RegExp 正则表达式对象**正则表达式**正则对象2.6 Global对象2.6.1 概述2.6.2 URI编码2.6.3 数字相关parseInt(string)isNaN()eval() 第一章 常用对象 2.1 Function对象 创建: function 方法名称(参数列表){}; //例如 function fun(a,b){

m0_47652477的博客 236

javaScript-如何引入js代码

javaScript-如何引入js代码 直接po代码和截图 <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>js01-如何引入js代码</title> <script type="text/javascript"> //script标签的...

一只苟延残喘的卑微蝼蚁 1万+

JavaScript学习手册一:JS简介

第1关:JavaScript 语言介绍、注释及基本输出方式 任务描述 要了解一门编程语言,要从输出开始。 本关任务:采用相关知识中介绍的任意一种方法输出“ Hello, JavaScript! ”。 相关知识 JavaScript 语言简介 JavaScript 诞生于1995年。在那个时代用户提交一个表单需要获取服务器端的反馈,这个时间大概十几秒,如果能在客户 qa 端完成一些基本的验证绝对是很大的进步。当时如日中天的 Netscape 公司,决定着手开发一种客户端语言解决简单的表单验证。就职

weixin_54327001的博客 1万+

深入JavaScript之JS引擎如何执行JS代码

我们大概经常能听到“执行环境”、“作用域”、“原型(链)”、“执行上下文”等内容,它们都在描述什么? JS代码的运行 我们知道了js是弱类型语言,在运行时才确定变量类型。js引擎在执行js代码时,也会从上到下进行 词法分析、语法分析、语义分析 等处理,并在代码解析完成后生成AST(抽象语法树),最终根据AST生成CPU可以执行的机器码并执行。 除此之外,JS引擎在执行代码时还会进行其它处理,如 V8 中还有两个阶段: 编译阶段:该阶段会进行执行上下文的创建,包括创建变量对象、建立作用域链、确定 this

flying meng的菜鸟居 5939
上一篇: JavaScript之二:基本语法
下一篇: JavaScript之三:常用类
hellobbboy
博客等级 码龄17年 20粉丝 52原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值