15个非常实用的JavaScript代码片段


Posted in Javascript onDecember 18, 2016

本文实例为大家分享了非常实用的js片段,供大家参考,具体内容如下

1.如何区分IE及非IE浏览器:

if(!+[1,]){ //IE 11 不支持
alert("这是 IE 浏览器");
}else{
alert("这不是 IE 浏览器");
}

2.将日期直接转换为数值:

+new Date();

3.非IE浏览器下将类数组对象 “arguments”转为数组:

Array.prototype.slice.call(arguments);

4.最简单的选择运算符||:

var a = 0 || 3;
console.log(a); //结果3

如果=后面的第一个值计算结果为布尔值“真”,则 a 的值取第 1 个,否则取第 2 个。

5.单链式运算(如 a++ -1):

var a=10;
console.log(a++ -1);

先执行“a-1”,再执行“a=a+1”。

6.有趣的void操作符:

<a href="javascript:void(0)">我是一个死链接</a>

void是一种操作符,用来计算一个表达式但不返回值。

7.跳转至新页面,并且保证浏览器不会再回退:

location.replace("https://3water.com");

location 的 replace() 方法可以用一个新的文档替换当前文档,并且该方法还会覆盖 History 对象中的记录。

8.几秒钟之后返回上一页:

<meta http-equiv="refresh" content="3;url=javascript:window.history.go(-1);">

9.在打开的子窗口中刷新父窗口:

window.opener.location.reload();

10.验证是否为负数的正则表达式:

/^-\d+$/.test(str);

11.用JavaScript打印页面:

window.print()

12.显示/隐藏一个DOM元素:

el.style.display = "";
el.style.display = "none"; //el是待操作的DOM元素

DOM元素的显示/隐藏主要是通过设置元素的样式display属性来实现。

13.实现alert()中的文本换行:

alert("p\np")

"\n"代表换行符。

14.实现ECMAScript5中的Object.create()函数: 

function clone(proto){
function _clone(){}
_clone.prototype = proto;
_clone.prototype.constructor = _clone;
return new_clone(); //等价于 Object.create(Person);
var me = clone(Person);

用原型链形式继承,构造函数重新指向新创建的对象。

15.理解JavaScript中的闭包:

例如,以下代码会输出5次,结果都是5,那么如何输出0、1、2、3、4?

for(var i = 0; i < 5; i++) {
setTimeout(function() {
console.log(i);
}, 1000);
}

利用闭包的原理实现,代码如下:

for(var i = 0; i < 5; i++) {
(function(e) {
setTimeout(function() {
console.log(e);
}, 1000);
})(i);
}

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
一个JS函数搞定网页标题(title)闪动效果
May 13 Javascript
jquery操作HTML5 的data-*的用法实例分享
Aug 17 Javascript
js点击button按钮跳转到另一个新页面
Oct 10 Javascript
使用Jquery实现每日签到功能
Apr 03 Javascript
文字垂直滚动之javascript代码
Jul 29 Javascript
JS实现很实用的对联广告代码(可自适应高度)
Sep 18 Javascript
jQuery购物车插件jsorder用法(支持后台处理程序直接转换成DataTable处理)
Jun 08 Javascript
jquery属性,遍历,HTML操作方法详解
Sep 17 Javascript
js学习总结之DOM2兼容处理顺序问题的解决方法
Jul 27 Javascript
前端图片懒加载(lazyload)的实现方法(提高用户体验)
Aug 21 Javascript
js实现会跳动的日历效果(完整实例)
Oct 18 Javascript
小程序多图列表实现性能优化的方法步骤
May 28 Javascript
scroll事件实现监控滚动条并分页显示(zepto.js)
Dec 18 #Javascript
简单实现node.js图片上传
Dec 18 #Javascript
Javascript计算二维数组重复值示例代码
Dec 18 #Javascript
Jquery Easyui选项卡组件Tab使用详解(10)
Dec 18 #Javascript
Jquery Easyui菜单组件Menu使用详解(15)
Dec 18 #Javascript
node.js请求HTTPS报错:UNABLE_TO_VERIFY_LEAF_SIGNATURE\的解决方法
Dec 18 #Javascript
Jquery Easyui分割按钮组件SplitButton使用详解(17)
Dec 18 #Javascript
You might like
声音就能俘获人心,蕾姆,是哪个漂亮小姐姐配音呢?
2020/03/03 日漫
MYSQL环境变量设置方法
2007/01/15 PHP
php7下的filesize函数
2019/09/30 PHP
PHP使用PhpSpreadsheet操作Excel实例详解
2020/03/26 PHP
javascript 火狐(firefox)不显示本地图片问题解决
2008/07/05 Javascript
Javascript String对象扩展HTML编码和解码的方法
2009/06/02 Javascript
JavaScript编程开发中的五个实用小技巧
2010/07/22 Javascript
初识JQuery 实例一(first)
2011/03/16 Javascript
Js获取下拉框选定项的值和文本的实现代码
2014/02/26 Javascript
JavaScript中判断整字类型最简洁的实现方法
2014/11/08 Javascript
纯javascript移动优先的幻灯片效果
2015/11/02 Javascript
JS实现动态生成表格并提交表格数据向后端
2020/11/25 Javascript
JS实现图片上传预览功能
2016/11/21 Javascript
Bootstrap3 内联单选和多选框
2016/12/29 Javascript
解决vue2.x中数据渲染以及vuex缓存的问题
2017/07/13 Javascript
使用vue-cli脚手架工具搭建vue-webpack项目
2019/01/14 Javascript
在vue使用clipboard.js进行一键复制文本的实现示例
2019/01/15 Javascript
微信小程序与公众号实现数据互通的方法
2019/07/25 Javascript
微信小程序动态设置图片大小的方法
2019/11/21 Javascript
webpack优化之代码分割与公共代码提取详解
2019/11/22 Javascript
python生成随机验证码(中文验证码)示例
2014/04/03 Python
从零学python系列之从文件读取和保存数据
2014/05/23 Python
浅谈Python用QQ邮箱发送邮件时授权码的问题
2018/01/29 Python
详解10个可以快速用Python进行数据分析的小技巧
2019/06/24 Python
python统计字符的个数代码实例
2020/02/07 Python
python梯度下降算法的实现
2020/02/24 Python
keras处理欠拟合和过拟合的实例讲解
2020/05/25 Python
Monnier Freres中文官网:法国领先的奢侈品配饰在线零售商
2017/11/01 全球购物
艺龙旅行网酒店预订:国内、港澳台酒店
2018/06/26 全球购物
大学生党员自我批评
2014/02/14 职场文书
弘扬职业精神演讲稿
2014/03/20 职场文书
2015年度考核个人工作总结
2015/10/24 职场文书
详解CSS故障艺术
2021/05/25 HTML / CSS
MySQL系列之六 用户与授权
2021/07/02 MySQL
SpringBoot 集成短信和邮件 以阿里云短信服务为例
2022/04/22 Java/Android
MySQL的prepare使用以及遇到的bug
2022/05/11 MySQL