写JavaScript案例时遇到的小知识点

选中的三种形式

1.用户点击

2.在标签中添加checked的样式属性

3.在JavaScript中checked=true;

onscroll 事件

定义和用法

onscroll 事件在元素滚动条在滚动时触发。

element.scrollTop :返回当前视图中的实际元素的顶部边缘和顶部边缘之间的距离

offsetWidth 属性

定义和用法

offsetWidth 属性是一个只读属性,它返回该元素的像素宽度,宽度包含内边距(padding)和边框(border),不包含外边距(margin),是一个整数,单位是像素 px。

通常,元素的 offsetWidth 是一种元素 CSS 宽度的衡量标准,包括元素的边框、内边距和元素的水平滚动条(如果存在且渲染的话),不包含 :before:after 等伪类元素的宽度。

对于文档的 body 对象,它包括代替元素的 CSS 宽度线性总含量高。浮动元素的向下延伸内容宽度是被忽略的。

fieldset

定义了一组相关的表单元素,并使用外框包含起来

定义了 元素的标题

定义和用法

splice() 方法用于添加或删除数组中的元素。

语法

array.splice(index,howmany,item1,.....,itemX)

getElement和querySelect的区别

  1. getElementById():返回对拥有指定id的第一个对象的引用

  2. getElementsByName():返回带有指定名称name的对象的集合。返回的是元素的数组,而不是一个元素(由于name不唯一)

  3. getElementsByTagName():返回带有指定标签名的对象集合

  4. querySelector():返回文档中匹配指定CSS选择器的第一个元素

  5. querySelectorAll() :返回文档中匹配的CSS选择器的所有元素节点列表(h5新增)

document.querySelector("p")      //获取文档中第一个 <p> 元素:
document.querySelector("#demo")     //获取文档中id="demo"的元素
document.querySelector(".example");   //获取文档中第一个 class="example" 的元素
document.querySelector("p.example");    //获取文档中 class="example"的第一个 <p> 元素
...... 
还可以写CSS的并集选择器、复合选择器等等。按照css规范来实现。

前三种getxxxByxxx获取的是动态集合,而querySelector获取的是静态集合。
简单的说就是,动态就是选出的元素会随文档改变,静态的不会,取出来之后就和文档的改变无关了。

getElementById性能更好,而querySelector按照CSS选择器规范,当在多级查找时,更为方便。

cloneNode

定义和用法

cloneNode() 方法可创建指定的节点的精确拷贝。

cloneNode() 方法 拷贝所有属性和值。

该方法将复制并返回调用它的节点的副本。如果传递给它的参数是 true,它还将递归复制当前节点的所有子孙节点。否则,它只复制当前节点。

let newTask=example.cloneNode(true);
//复制节点  ture可以复制该节点内的节点,false则只复制该节点

Input输入框过滤空格方法

一、 .trim() 去除字符串的头尾空格:

定义和用法

trim() 方法用于删除字符串的头尾空白符,空白符包括:空格、制表符 tab、换行符等其他空白符等。

trim() 方法不会改变原始字符串。

trim() 方法不适用于 null, undefined, Number 类型。

var和let的区别

1、作用域不同

var是函数作用域,let是块作用域。

在函数中声明了var,整个函数内都是有效的,比如说在for循环内定义的一个var变量,实际上其在for循环以外也是可以访问的。

而let由于是块作用域,所以如果在块作用域内定义的变量,比如说在for循环内,在其外面是不可被访问的,所以for循环推荐用let。

2、let不能在定义之前访问该变量,但是var可以。

let必须先声明,在使用。而var先使用后声明也行,只不过直接使用但没有定义的时候,其值是undefined。var有一个变量提升的过程,当整个函数作用域被创建的时候,实际上var定义的变量都会被创建,并且如果此时没有初始化的话,则默认为初始化一个undefined。

3、let不能被重新定义,但是var是可以的

this 关键字

面向对象语言中 this 表示当前对象的一个引用。

但在 JavaScript 中 this 不是固定不变的,它会随着执行环境的改变而改变。

  • 在方法中,this 表示该方法所属的对象。
  • 如果单独使用,this 表示全局对象。
  • 在函数中,this 表示全局对象。
  • 在函数中,在严格模式下,this 是未定义的(undefined)。
  • 在事件中,this 表示接收事件的元素。
  • 类似 call() 和 apply() 方法可以将 this 引用到任何对象。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值