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 相关文章推荐
Javascript表达式中连续的 &amp;&amp; 和 || 之赋值区别
Oct 17 Javascript
window.location.reload()方法刷新页面弹出要再次显示该网页对话框
Apr 24 Javascript
jQuery Ajax使用FormData对象上传文件的方法
Sep 07 Javascript
JavaScript 拖拽实例代码
Sep 21 Javascript
vue组件Prop传递数据的实现示例
Aug 17 Javascript
jquery在启动页面时,自动加载数据的实例
Jan 22 jQuery
在create-react-app中使用css modules的示例代码
Jul 31 Javascript
小程序自定义单页面、全局导航栏的实现代码
Mar 15 Javascript
JS解惑之Object中的key是有序的么
May 06 Javascript
深入了解js原型模式
May 30 Javascript
关于vue.js中实现方法内某些代码延时执行
Nov 14 Javascript
Vue 实现分页与输入框关键字筛选功能
Jan 02 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
php项目打包方法
2008/02/18 PHP
PHPCMS的使用小结
2010/09/20 PHP
Laravel中扩展Memcached缓存驱动实现使用阿里云OCS缓存
2015/02/10 PHP
解析WordPress中控制用户登陆和判断用户登陆的PHP函数
2016/03/01 PHP
Laravel框架模板加载,分配变量及简单路由功能示例
2018/06/11 PHP
js 上传图片预览问题
2010/12/06 Javascript
使用jQuery jqPlot插件绘制柱状图
2014/12/18 Javascript
Javascript基础教程之数据类型 (数值 Number)
2015/01/18 Javascript
javascript获取select值的方法分析
2015/07/02 Javascript
jquery动态导航插件dynamicNav用法实例分析
2015/09/06 Javascript
jQuery事件对象总结
2016/10/17 Javascript
纯js实现html转pdf的简单实例(推荐)
2017/02/16 Javascript
原生js实现选项卡功能
2017/03/08 Javascript
mui上拉加载功能实例详解
2017/04/13 Javascript
为输入框加入数字js校验代码分享
2017/11/02 Javascript
vue项目中用cdn优化的方法
2018/01/03 Javascript
Vue.extend实现挂载到实例上的方法
2019/05/01 Javascript
HTML+JavaScript实现扫雷小游戏
2019/09/30 Javascript
微信小程序利用button控制条件标签的变量问题
2020/03/15 Javascript
Python编程中运用闭包时所需要注意的一些地方
2015/05/02 Python
Python中的数据对象持久化存储模块pickle的使用示例
2016/03/03 Python
Python中利用Scipy包的SIFT方法进行图片识别的实例教程
2016/06/03 Python
Python简单删除列表中相同元素的方法示例
2017/06/12 Python
用Python编写一个简单的CS架构后门的方法
2018/11/20 Python
python多任务及返回值的处理方法
2019/01/22 Python
python实现低通滤波器代码
2020/02/26 Python
Pycharm中配置远程Docker运行环境的教程图解
2020/06/11 Python
python 密码学示例——凯撒密码的实现
2020/09/21 Python
eDreams意大利:南欧领先的在线旅行社
2018/11/23 全球购物
网站域名和主机:Domain.com
2019/04/01 全球购物
公司开业庆典主持词
2014/03/21 职场文书
教师爱岗敬业演讲稿
2014/05/05 职场文书
食品委托检验协议书范本
2014/09/12 职场文书
2014年前台个人工作总结
2014/11/14 职场文书
给男朋友的道歉短信
2015/05/12 职场文书
毕业班工作总结
2015/08/10 职场文书