看到掘金上翻出一个老梗,前端如何不带脏字得骂产品经理傻逼(sb),复制(!(~+[]) + {})[--[~+""][+[]] * [~+[]] + ~~!+[]] + ({} + [])[[~!+[]] * ~+[]]到浏览器控制台回车,看到输出sb二字. (1)原理很简单,就是取字符串里的字母进行拼凑: //既然知道原理了 那么也拼凑一个赞美js吧 ({} + [])[--[~+""][+[]] * [~+[]] + ~~!+[]] + (!(~+[]) + {…
前言 很多小伙伴们觉得javaScript很简单,下面的这行 javaScript代码可能会让你怀疑人生. (!(~+[])+{})[--[~+""][+[]]*[~+[]] + ~~!+[]]+({}+[])[[~!+[]]*~+[]] 小伙伴们学会了,以后遇到一些讲不通道理,让你不开森的人就把这段代码发给他. 那么这段代码为什么会输出sb呢? 其实这段代码考的是js的类型转化的一些基本原理 首先要运用到的第一个知识就是js运算符的优先级,因为这么长一段运算看的人眼花,我们必须得先根…
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Typ…
经常看一些网站页面源代码中的css文件和js文件后面带一个问号,后面跟着一连串数字或字符,这是干什么用的? 这个方法我也用过,而且很好用?,它的作用有两个:1.作为版本号,让自己方便记忆.查找:2.作为修改标签,让浏览器重新下载新文件. 其实css文件后面得问号起不到实际作用,仅能当作后缀,如果用问号加参数的方法,可以添加版本号等信息,比如新浪.facebook上用到的: http://xxx.xxx.cn/css/common/index.css?version=20101126145707…
  js setTimeout 传递带参数的函数的2种方式 Created by Marydon on 2018年9月14日 1.准备工作 function sayYourName(param) { alert(param); } 使用setTimeout或setInterval,如何调用该函数? 2.解决方案 方式一 setTimeout("sayYourName('lisi')",1000);// 1000毫秒后执行 方式二:使用匿名函数 setTimeout(function()…
经常看一些网站页面源代码中的css文件和js文件后面带一个问号,后面跟着一连串数字或字符,这是干什么用的? 这个方法我也用过,而且很好用?,它的作用有两个:1.作为版本号,让自己方便记忆.查找:2.作为修改标签,让浏览器重新下载新文件. 其实css文件后面得问号起不到实际作用,仅能当作后缀,如果用问号加参数的方法,可以添加版本号等信息,比如新浪.facebook上用到的: http://xxx.xxx.cn/css/common/index.css?version=20101126145707…
js课程 2-7 带默认参数的函数怎么写(注意参数顺序) 一.总结 一句话总结:默认参数一定要放在最后面,而且还有注意你调用参数的时候给参数的顺序习惯.直接加个等于号就可以是默认参数.function out(n=9,k=1){} 1.js函数如何加默认参数? 等于号带默认参数 function out(n=9,k=1){} 2.在写带默认参数的函数的时候的注意事项是什么? 默认参数一定要放在最后面,而且还有注意你调用参数的时候给参数的顺序习惯. 二.带默认参数的函数怎么写 1.相关知识 函数默…
前端学习:JS面向对象知识学习(图解) 前端学习:JS(面向对象)代码笔记 JS面向对象图解知识全览 创建类和对象 方式1:使用Object()函数 方式2:使用自变量 方式3:使用工厂函数 创建多个对象 方式4:构造函数 静态成员和实例成员 静态成员 实例成员 原型 构造函数的原型 内存图 方式一 方式二 方式三 对象的原型 打印对象的原型 构造函数和原型中同时存在方法的时候 对象__proto__和构造函数的prototype 三角关系:构造函数 原型对象 对象/实例 属性查找规则 注意点…
JS大总结(带实例) JavaScript事务查询综合click() 对象.click() 使对象被点击.closed 对象.closed 对象窗口是否已封闭true/falseclearTimeout(对象) 清除已设置的setTimeout对象clearInterval(对象) 清除已设置的setInterval对象confirm("提示信息") 弹出确认框,断定返回true作废返回falsecursor:样式 更改鼠标样式 hand crosshair text wait hel…
大家都知道,在JS之中,一个变量的生命周期不是以大括号为界限的,所以即使是使用在循环或判断中的变量,外部也可以使用.可如果我们在循环或变量中使用了方法,而且这个方法使用了循环中的变量,那么后面的代码是可以修改这个变量的值的,而不是,将值的内容完全写死在了循环里面的方法中.那么解决这个问题的一种方法就是,将方法写出来,接收一个参数就可以了. 可是,在JS中传递的参数如果是方法,那么后面不能加上小括号,如果加上的话,就认为是调用了这个方法,会立即执行,这样一来,就更别说是传递参数了,那么如果解决这个…