标签归档:JS

JS DOM事件汇总

onanimationstart 事件在 CSS 动画开始播放时触发。
onanimationiteration 事件在重复 CSS 动画时触发。
onanimationend 事件在 CSS 动画完成时触发。
ontransitionend 事件在 CSS 转换完成时触发。
onbeforeprint 事件在页面即将被打印或打印对话框出现前触发。
onafterprint 事件在页面已开始打印,或打印对话框已关闭时触发。 继续阅读

发表在 JavaScript | 标签为 , , , | JS DOM事件汇总已关闭评论

JS获取页面滚动条位置的方法(含浏览器测试)

在 Javascript 中,获取页面滚动条位置的 DOM 属性有:document.body.scrollTop / document.body.scrollLeft、document.documentElement.scrollTop / document.documentElement.scrollLeft,但存在浏览器兼容性问题,以下是测试结果:
1、document.body.scrollTop / document.body.scrollLeft
① 存在文档声明(<!DOCTYPE html>)
谷歌浏览器:正常
360浏览器:正常
火狐浏览器:0
IE浏览器:0 继续阅读

发表在 JavaScript | 标签为 , , | JS获取页面滚动条位置的方法(含浏览器测试)已关闭评论

JS AJAX函数封装

AJAX,英文全称:Asynchronous JavaScript and XML,即异步的 JavaScript 和 XML,主要用于在与服务器交换数据时无需重新加载页面。AJAX 的实现是通过创建 XMLHttpRequest 对象,向服务器发送请求,再根据服务器返回的响应决定客户端接下来的动作。 继续阅读

发表在 JavaScript | 标签为 , , | JS AJAX函数封装已关闭评论

JS 空数组与0、false相等

在对空数组与 0、false 进行相等操作符比较时,结果会返回 true,但在 if 语句中判断空数组则是 true,令人感觉造成 false 等于 true 的假象。

console.log([] == 0);
// > true
console.log([] == false);
// > true
if ([]) {
  console.log('true');
} else {
  console.log('false');
}
// > true

继续阅读

发表在 JavaScript | 标签为 , , , , , | JS 空数组与0、false相等已关闭评论

JS面向对象编程与对象继承实现

一、对象的创建
1、工厂方法(函数声明):

function createUser(name) {
    const user = {
        name,
        sayName: function() {
            console.log(this.name);
        }
    }
    return user;
}
const user = createUser('Johnson');
user.sayName();
// -> Johnson

继续阅读

发表在 JavaScript | 标签为 , , , , , | JS面向对象编程与对象继承实现已关闭评论

JS 实现1到100累加

1.利用 for 循环

var sum = 0;
for (var i = 1; i <= 100; i++) {
  sum += i;
}
console.log(sum);
// > 5050

继续阅读

发表在 JavaScript | 标签为 , , | JS 实现1到100累加已关闭评论

JS中call、apply、bind的用法和区别

call()、apply()、bind() 都是 Function 的原型方法,用于改变调用函数内部的 this 指向。
用法:
call(thisArg, arg1, arg2, …)
apply(thisArg, args)
bind(thisArg) 继续阅读

发表在 JavaScript | 标签为 , , , | JS中call、apply、bind的用法和区别已关闭评论

JS中相等(==)与全等(===)的区别

Javascript中比较两个数据是否相等,有相等操作符(==)、全等操作符(===)。相等操作符只对比等式两边的值是否相等,不同数据类型之间对比会进行隐性转换,转换后值相等即返回 true,否则返回 false;全等操作符不仅比较等式两边的值是否相等,还要比较数据类型是否相同,只有值相等并且数据类型相同才返回 true,否则返回 false。 继续阅读

发表在 JavaScript | 标签为 , , | 留下评论

JS常用的数组去重方法

前端开发一些需求时经常需要对数组的元素作唯一处理,也就是将数组中重复的项目剔除掉,只保留唯一的一份。下面分享几个JS常用的数组去重方法。
假设以下声明数组:
var array = [3, ‘a’, 17, 1, ‘v’, ‘d’, 44, 3, ‘rr’, 1, ‘d’]; 继续阅读

发表在 JavaScript | 标签为 , | 留下评论

JS 字符串操作方法

1.substring() 字符串截取
语法:

stringObject.substring(start, end)

参数说明:
start:必需,字符串截取的开始位置,不可以是负数。
end:可选,字符串截取的结束位置,如不指定默认截取到字符串结尾,指定时截取到不包括结束位置的字符,不可以是负数。 继续阅读

发表在 JavaScript | 标签为 , , , | JS 字符串操作方法已关闭评论