[JavaScript] JavaScript 值类型使用:与数组有关的API
课程来源:B站后盾人
typeof和instanceof的使用
let a = 10
console.log(typeof a)
let b = ''
console.log(typeof b)
let c = []
console.log(typeof c)
let d = {}
console.log(typeof d)
// {},[]都是Object,怎么办呢?
console.log(c instanceof Array)
console.log(d instanceof Array)
console.log(c instanceof Object)
console.log(d instanceof Object)
运行结果:
制表符和换行符
- 制表符:
\t
- 换行符:
\n
let hd = 'du\ts\nt'
console.log(hd);
运行结果:
模板字符串
let namee = 'dust'
let age = 20
let a = `${namee}今年${age}岁`
console.log(a)
- 这是一个非常简单的字符串连接方式,取值方式为
${这里是变量名}
- 看下运行结果就明白了:
标签模板
这是JS的一个独有的特性了,当你不知道要传入几个参数时特别好用
let namee = 'dust'
let web = 'dust.com'
let age = 20
console.log(`${namee}网址是${web}`)
function tag(strings, ...vars) {console.log(vars)console.log(strings)
}
tag(namee, web, age)
运行结果:
字符串的基本函数使用
先来看看这个有趣的效果
用一个for来不断改变字体大小就可以实现(基于dom操作)
代码:
let a = 'hellodust'for (let i = 0; i < a.length; i++) {let span = document.createElement('span')span.innerHTML = a[i]span.style.fontSize = (i + 1) * 10 + 'px'document.body.append(span)
}
字符串截取操作
slice
substring
substr
的使用- 其中
substring
不能添加负数为参数,它会将负数参数视为0
let a = 'hello,dust!'console.log(a.slice(0))
console.log(a.slice(1))
console.log(a.slice(1, 3))// substring()不可以添负数哦
console.log(a.substring(1, 3))
console.log(a.substr(1, 3))
运行结果:
字符串的检索
indexOf
的使用indexOf
可以显示本字符第一次出现的位置(下标),如果没有这个字符,则返回-1
console.log(a.indexOf('o'))
console.log(a.indexOf('a'))
运行结果:
includes
的使用:includes
返回一个boolean值,表示这个字符串中是否包含被查找的内容
console.log(a.includes('o'))
console.log(a.includes('a'))
运行结果:
startsWith
的使用startsWith
返回一个boolean值,表示本字符串是否以这个为开头- 注意,
startsWith
是区分大小写的
let a = 'Hello,dust!'
console.log(a.startsWith('o'))
console.log(a.startsWith('h'))
console.log(a.startsWith('he'))
console.log(a.toLowerCase().startsWith('he'))
运行结果:
some
的使用some
返回一个boolean值,表示是否含有本数组内的字符串- 文字不太好描述,看代码会简单一点
const word = ['php', 'css']
const string = 'dust likes to learn html and css.'
const statuss = word.some((word) => {return string.includes(word)
})
if (statuss) {console.log('找到了')
}
运行结果:
reduce
的使用reduce
允许传入两个参数,第一个参数为上一个的回调函数,第二个参数为本项- 从左到右为每个数组元素执行一次回调函数,并把上次回调函数的返回值放在一个暂存器中传给下次的回调函数,并返回最后一次回调函数的返回值。
const word = ['php', 'css']
const string = 'dust likes to learn php and css.'
const replaceString = word.reduce((pre, word) => pre.replace(word, `<span style="color:red">${word}</span>`), string)console.log(replaceString)
document.body.innerHTML += replaceString
运行结果:
电话号码的模糊处理
function phone(mobile, len = 3) {return String(mobile).slice(0, len * -1) + '*'.repeat(len)
}console.log(phone(98765432101))
运行结果:
提取数字
parseInt
和parseFloat
允许提取字符串头几位的数字,但是如果第一位不是数字,则会返回NaN
const str = '99.99hello'
const str1 = 'hello99.99dust'console.log(parseInt(str))
console.log(parseInt(str1))
console.log(parseFloat(str))
console.log(parseFloat(str1))
运行结果:
字符串的拆分与合并
spilt
传入一个参数,遇到这个就把它隔开(字符串使用)join
传入一个参数,返回一个字符串,中间加入这个参数(数组使用)
const str = '99.99hello'
const str1 = 'hello99.99dust'
console.log(str.split(''))
console.log(str.split('e'))
let s = str.split('')
console.log(s.join(','))
运行结果:
数字转化为字符串
let a = 99
console.log(a.toString())
运行结果:
隐式转换
- 关于隐式转换:false=0,true=1
- 比如:一瓶可乐和一瓶水不能直接比较哪个大,那么怎么办呢?把他们都转换成人民币来比较
- 在此,Number类型就是这个"人民币"
console.log(-1 < false)
console.log(1 == true)
运行结果:
- 一个引用类型(对象)转换成
boolean
类型时:是true
,这个是比较 - 但是空数组转换成
Number
类型时等于0,这个是转换 - 这个是不能混为一谈的
- 关于数组和对象的隐式转换如下:
console.log([] == false)
console.log([] == 0)
console.log({} == false)
console.log({} == 0)
Number的toFixed
的使用
toFixed()
保留几位小数
let a = 99.987654
console.log(a.toFixed(3))
运行结果:
[JavaScript] JavaScript 值类型使用:与数组有关的API相关推荐
- java引用类型和值类型_[Java教程]JavaScript中值类型和引用类型的区别
[Java教程]JavaScript中值类型和引用类型的区别 0 2017-02-24 00:00:35 JavaScript的数据类型分为两类:原始类型和对象类型.其中,原始类型包括:数字.字符串和 ...
- JavaScript(三)——对象与数组基础及API
文章目录 数据存储 (1)原始类型存储 (2)引用类型存储 一.面向对象 二.对象 1分类 2 自定义对象创建方式(封装) 3.销毁对象 4.访问.删除对象属性 5.遍历对象 6.检测对象属性 7.方 ...
- C#中的值类型和引用类型
文章目录 1 C#中的值类型 1.1 值类型示例程序 1.2 值类型(基本数据类型)的变量使用特点 2 C#中的引用类型 2.1 引用类型数据程序示例 2.2 引用数据类型的变量使用特点 3 变量类型 ...
- 第八回:品味类型---值类型与引用类型(上)-内存有理
第八回:品味类型---值类型与引用类型(上)-内存有理 http://www.cnblogs.com/anytao/archive/2007/05/23/must_net_08.html 发布日期:2 ...
- [你必须知道的.NET] 第八回:品味类型---值类型与引用类型(上)-内存有理
本文将介绍以下内容: 类型的基本概念 值类型深入 引用类型深入 值类型与引用类型的比较及应用 1. 引言 买了新本本,忙了好几天系统,终于开始了对值类型和引用类型做个全面的讲述了,本系列开篇之时就是因 ...
- 【转】[你必须知道的.NET] 第八回:品味类型---值类型与引用类型(上)-内存有理...
引用自:http://www.cnblogs.com/anytao/category/155694.html 作者:Anytao 本文将介绍以下内容: 类型的基本概念 值类型深入 引用类型深入 值类型 ...
- javascript基本数据类型与值类型引用类型说明
DEMO: http://sources.ikeepstudying.com/jsdata/ 摘要:本文主要讲了javascript中的基本数据类型,以及值类型和引用类型的区别与使用 一.基本数据类型 ...
- [JavaScript] JavaScript数组挖掘,不只是讲数组哟(2)
课程来源:后盾人 上一篇的内容:[JavaScript] JavaScript数组挖掘,不只是讲数组哟 数组引用类型分析,多维数组,用Array.of为数组创建细节,类型检测与转换,在一个数组后面加一 ...
- [JavaScript] JavaScript 数组挖掘,不只是讲数组哟
课程来源:后盾人 数组引用类型分析 数组的定义 const array = new Array('hello', 'dust', 1, 2, 3, 4, 5) console.log(array) l ...
最新文章
- 小程序clearinterval无效解决
- 037_CSS媒介类型
- C# ckeditor+ckfinder的图片上传配置
- 【数据结构与算法】之深入解析“买卖股票的最好时机含手续费”的求解思路与算法示例
- C#开发WPF/Silverlight动画及游戏系列教程(Game Tutorial):(六)完美移动
- 一次失败的项目经理招聘经验
- mysql自动备份发邮箱,定时任务自动备份数据库并邮件发送
- 深度解读 MongoDB 最全面的增强版本 4.4 新特性
- CASA方法估算NPP(IDL+ENVI)
- 云计算 | Centos7和Ubuntu1804制作本地安装源
- 服务端(Win server2012)+IIS管理器配置PHP服务器并部署网站讲解
- 店宝宝:京东重新进军社区团购
- JavaScript数组方法总结
- 俄罗斯计划推出数字卢布 逐年解锁推进?国际货币金融体系迈入数字化变革
- android 检测输入法,Android判断软键盘 输入法 是否显示
- DCM4CHEE-ARC-LIGHT
- 三维重建KInectFusion 学习笔记
- 名帖121 文徵明 小楷《琴赋》
- 软件默认安装在C盘解决方案 eg:google浏览器、XMind脑图工具等
- 【蓝桥杯 路径 python】Dij算法
热门文章
- 2022-2028年中国抗菌不锈钢行业研究及前瞻分析报告
- 2022-2028年中国亲子游行业市场分析及前瞻研究报告
- pip install 豆瓣源、清华源、阿里源、中国科技大学源
- 2022-2028年中国内衣用热熔胶膜行业发展现状调查及市场分析预测报告
- python中如何对复杂的json数据快速查找key对应的value值(使用JsonSearch包)
- 用乐观的心态去面对生活,能让你的生活过得更加快乐
- 命名实体识别学习笔记——使用Ltp
- LeetCode简单题之二进制表示中质数个计算置位
- Amazon SageMaker和NVIDIA NGC加速AI和ML工作流
- 物联网安全只有最薄弱的环节才有保障