课程来源: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))

运行结果:


提取数字

  • parseIntparseFloat允许提取字符串头几位的数字,但是如果第一位不是数字,则会返回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相关推荐

  1. java引用类型和值类型_[Java教程]JavaScript中值类型和引用类型的区别

    [Java教程]JavaScript中值类型和引用类型的区别 0 2017-02-24 00:00:35 JavaScript的数据类型分为两类:原始类型和对象类型.其中,原始类型包括:数字.字符串和 ...

  2. JavaScript(三)——对象与数组基础及API

    文章目录 数据存储 (1)原始类型存储 (2)引用类型存储 一.面向对象 二.对象 1分类 2 自定义对象创建方式(封装) 3.销毁对象 4.访问.删除对象属性 5.遍历对象 6.检测对象属性 7.方 ...

  3. C#中的值类型和引用类型

    文章目录 1 C#中的值类型 1.1 值类型示例程序 1.2 值类型(基本数据类型)的变量使用特点 2 C#中的引用类型 2.1 引用类型数据程序示例 2.2 引用数据类型的变量使用特点 3 变量类型 ...

  4. 第八回:品味类型---值类型与引用类型(上)-内存有理

    第八回:品味类型---值类型与引用类型(上)-内存有理 http://www.cnblogs.com/anytao/archive/2007/05/23/must_net_08.html 发布日期:2 ...

  5. [你必须知道的.NET] 第八回:品味类型---值类型与引用类型(上)-内存有理

    本文将介绍以下内容: 类型的基本概念 值类型深入 引用类型深入 值类型与引用类型的比较及应用 1. 引言 买了新本本,忙了好几天系统,终于开始了对值类型和引用类型做个全面的讲述了,本系列开篇之时就是因 ...

  6. 【转】[你必须知道的.NET] 第八回:品味类型---值类型与引用类型(上)-内存有理...

    引用自:http://www.cnblogs.com/anytao/category/155694.html 作者:Anytao 本文将介绍以下内容: 类型的基本概念 值类型深入 引用类型深入 值类型 ...

  7. javascript基本数据类型与值类型引用类型说明

    DEMO: http://sources.ikeepstudying.com/jsdata/ 摘要:本文主要讲了javascript中的基本数据类型,以及值类型和引用类型的区别与使用 一.基本数据类型 ...

  8. [JavaScript] JavaScript数组挖掘,不只是讲数组哟(2)

    课程来源:后盾人 上一篇的内容:[JavaScript] JavaScript数组挖掘,不只是讲数组哟 数组引用类型分析,多维数组,用Array.of为数组创建细节,类型检测与转换,在一个数组后面加一 ...

  9. [JavaScript] JavaScript 数组挖掘,不只是讲数组哟

    课程来源:后盾人 数组引用类型分析 数组的定义 const array = new Array('hello', 'dust', 1, 2, 3, 4, 5) console.log(array) l ...

最新文章

  1. 小程序clearinterval无效解决
  2. 037_CSS媒介类型
  3. C# ckeditor+ckfinder的图片上传配置
  4. 【数据结构与算法】之深入解析“买卖股票的最好时机含手续费”的求解思路与算法示例
  5. C#开发WPF/Silverlight动画及游戏系列教程(Game Tutorial):(六)完美移动
  6. 一次失败的项目经理招聘经验
  7. mysql自动备份发邮箱,定时任务自动备份数据库并邮件发送
  8. 深度解读 MongoDB 最全面的增强版本 4.4 新特性
  9. CASA方法估算NPP(IDL+ENVI)
  10. 云计算 | Centos7和Ubuntu1804制作本地安装源
  11. 服务端(Win server2012)+IIS管理器配置PHP服务器并部署网站讲解
  12. 店宝宝:京东重新进军社区团购
  13. JavaScript数组方法总结
  14. 俄罗斯计划推出数字卢布 逐年解锁推进?国际货币金融体系迈入数字化变革
  15. android 检测输入法,Android判断软键盘 输入法 是否显示
  16. DCM4CHEE-ARC-LIGHT
  17. 三维重建KInectFusion 学习笔记
  18. 名帖121 文徵明 小楷《琴赋》
  19. 软件默认安装在C盘解决方案 eg:google浏览器、XMind脑图工具等
  20. 【蓝桥杯 路径 python】Dij算法

热门文章

  1. 2022-2028年中国抗菌不锈钢行业研究及前瞻分析报告
  2. 2022-2028年中国亲子游行业市场分析及前瞻研究报告
  3. pip install 豆瓣源、清华源、阿里源、中国科技大学源
  4. 2022-2028年中国内衣用热熔胶膜行业发展现状调查及市场分析预测报告
  5. python中如何对复杂的json数据快速查找key对应的value值(使用JsonSearch包)
  6. 用乐观的心态去面对生活,能让你的生活过得更加快乐
  7. 命名实体识别学习笔记——使用Ltp
  8. LeetCode简单题之二进制表示中质数个计算置位
  9. Amazon SageMaker和NVIDIA NGC加速AI和ML工作流
  10. 物联网安全只有最薄弱的环节才有保障