首页 > 编程语言 >javaScript 小知识

javaScript 小知识

时间:2023-07-24 14:03:20浏览次数:37  
标签:知识 console log javaScript 运算符 let 数组 div

??  运算符只有前面的值是 undefined 才会执行
let status = undefined;
let text = status ?? "暂无"
console.log(text) // 暂无

?.运算符这在有时候处理对象时非常有用,看下面案例,
person.name返回undefined然后在调用toString
这时肯定会报错,这时使用?.运算符就不会产生错误,
?.运算符是只有在当值不是undefined时才会调用toString方法。

~~双非运算符可以用于向下取整。
console.log(~~4.3) // 4

合并对象
使用Es6新增方法Object.assign,合并对象如果对象里面有重复的值,则后面覆盖前面,可以接收无限参数。在工作中也是经常使用。
let person = {name: "蛙人", age: 24}
let obj = Object.assign({}, person)
console.log(obj) // {name: "蛙人", age: 24}

伪数组转换为真数组
伪数组不能调用真数组对象上的方法,所以得将伪数组转换为真数组,获取js元素是伪数组。
document.querySelectAll("div") // NodeList[div, div, div, div]
[...document.querySelectorAll('div')] // 转换为真数组
Array.from(document.querySelectorAll('div')) // 转换为真数组

检测值是否为数组
let arr = []
console.log(Array.isArray(arr)) // true
console.log(Object.prototype.toString.call(arr) == "[object Array]") // true

获取一个值的下标
在Es6之前,我们只知道使用indexOf方法去获取下标,Es6之后还有一个方法哦,如果找到该值返回当前值的下标,找不到返回 -1
let colors = ["red", "blue", "green"]
function getIndex(val) {
    return colors.findIndex(i => i == val)
}
getIndex("blue") // 1

检测当前页面是否被隐藏
监测当前页面是否被隐藏,当切换页面时显示true, false就是打开状态。一般在工作用主要用到用户在页面停留了多长时间。
document.addEventListener("visibilitychange", function() {
   console.log(document.hidden);
});

标签:知识,console,log,javaScript,运算符,let,数组,div
From: https://blog.51cto.com/u_16171738/6834593

相关文章

  • JavaScript复习知识点
    原型在JavaScript中,每个对象都有一个原型(prototype)。原型是一个对象,其他对象可以通过它来继承属性和方法。简单来说,对象通过其原型来共享和访问属性和方法。原型以原型链的形式连接在一起,形成了一个对象和原型之间的关系。当我们访问对象的属性或方法时,JavaScript引擎首先在......
  • 云之道知识付费v2 3.1.1独立版小程序源码+教程
    我已经对源码中的所有引流部分进行了修改,如果还有任何未被删除的部分,请麻烦您留言告诉我!请注意,本源码仅供学习使用,请在下载后的24小时内将其删除。因此,目前我了解的情况是,它不支持通过观看广告来获取资源。如果有大佬在搭建后发现它支持该功能,请务必告诉我操作步骤!我在此向你们表......
  • 公司业务端需要的内部知识库,您的企业还没有吗?
    在当今高速发展的商业环境中,企业面临着日益复杂的挑战。为了更好地应对这些挑战,企业需要建立一个完善的内部知识库。下面将探讨为企业建立内部知识库的重要性,并说明其对企业的益处。企业建立内部知识库的重要性1.提高工作效率内部知识库可以帮助员工快速找到所需的信息,从而提高工......
  • 数组去重方法总结(JavaScript 记录)
    在进行项目开发的时候,有时候需要把一些前端的数组进行去重处理,得到一个去重后的数据,然后再进行相关的操作,这也是在前端面试中经常出现的问题数组去重的多种方法:利用ES6Set去重利用for嵌套for,然后splice去重利用indexOf去重利用sort()去重利用对象的属性不能相......
  • node的一部分知识(还在学习)
    node.js一,node最基础一,为什么要学node.js1.可以让每个人都访问到我们的网页2.为了学习vue二,node是什么一款应该程序,是一个软件,可以运行javascript三,node的作用1.开发服务器端应用2.开发工具类应用3.开发桌面端应用四,node的安装之前安装过二,命令的相关知识一,认识命令......
  • JavaScript jQuery 比对示例,ajax示例
    js教程:https://www.w3school.com.cn/js/index.aspjQuery教程:https://www.w3school.com.cn/jquery/index.asp以下是部分代码示例<!DOCTYPEhtml><htmllang="en"><head><metacharset="UTF-8"><title>javascript</t......
  • JavaScript程序设计模式小技巧——策略模式,快看快用!!!
    ##前言>系列首发于公众号[『非同质前端札记』](https://mp.weixin.qq.com/s?__biz=MzkyOTI2MzE0MQ==&mid=2247485576&idx=1&sn=5ddfe93f427f05f5d126dead859d0dc8&chksm=c20d73c2f57afad4bbea380dfa1bcc15367a4cc06bf5dd0603100e8bd7bb317009fa65442cdb&token=1071012......
  • C语言的一些不常用的编译知识
    1.__stringifyLinux内核中有如下两个宏:#define__stringify_1(x...)#x#define__stringify(x...)__stringify_1(x)作用:会将x替换成()里面的内容。2.GCC__attribute__使用__attribute__((used)):表示对于这个函数可能不会调用它、可能用不到它,编译器不用进行warning提......
  • 知识蒸馏
    KnowledgeDistill蒸馏思想知识蒸馏是一种模型压缩方法,通过引导轻量化的学生模型“模仿”性能更好、结构更复杂的的教学模型(教师模型),在不改变学生模型结构的情况下提高其性能。最早由Hinton在2015年提出,应用于分类任务。知识蒸馏的目的是将教师模型中的知识转移到学生模型中,从......
  • Python使用Flask开发Web服务 - 裴 - flask的路由route的知识点演示
     默认是支持GET:  修改后,只支持post: 也可以getpost都支持 ......