<div class="tit"><label>yourName:</label><input type="text" id="yourName" /><button onclick="you(1)">确定</button></div>

        <script type="text/javascript">

            function you(num){
var resultNum = 1;
while(num < 300){
resultNum *= num ++;
}
var partArr = [];
var part = ((resultNum < num) + typeof []);
for (var i = 0; i< part.length; i++){
if((i + 1) % 3 == 0){
partArr.push(part[i]);
}
}
var special = String.fromCharCode((this + [])[52 >> 2].charCodeAt() - 1);
partArr.splice((~[]),0,special); var ele1 = document.getElementById('yourName').value;
var ele2 = (resultNum / 1314 + '520') [([] + []) * 1];
var ele3 = partArr.join('');
var ele4 = arguments.callee.name;
return [ele1, ele2 ,ele3,ele4].join(' ');
} </script>

知识点:

1、超过170的大数, 阶乘的结果为Infinity(无穷) (如上代码为299 !)

2、当window对象转换为字符串时,为‘[object window]’

3、~ 按位非

  简单一点,对任一数值 X 进行按位非操作的结果为 - ( x + 1 )

  那么, ~~X 就为 - ( - ( x + 1 ) + 1 )

4、>>右移   可以理解为10进制的 52 除以 4

5、formCharCode 和 charCodeAt ,为ASCII码值 与 字符 相互转换的方法

6、在函数中使用arguments.callee 指向的是函数本身

7、this指向的是函数的所有者

因为知识点都比较偏 ,
并且打印出来的结果是这样的:

所有标题为“ 说声爱你不容易 ”

* 以上代码是基于 HTML5学堂 公众号《解码》一篇中的代码 进行修改后的 样子 ——   版权说明

  

js --"说声爱你不容易"的更多相关文章

  1. 爬虫必看,每日JS逆向之爱奇艺密码加密,今天你练了吗?

    友情提示:优先在公众号更新,在博客园更新较慢,有兴趣的关注一下知识图谱与大数据公众号,本次目标是抠出爱奇艺passwd加密JS代码,如果你看到了这一篇,说明你对JS逆向感兴趣,如果是初学者,那不妨再看 ...

  2. Respond.js – 让不懂爱的 IE6-8 支持 CSS3 Media Query

    respond.min.js <script src="js/respond.min.js"></script> respond.min.js代码: /*! ...

  3. js原声代码 轮播图

    js轮播图 html部分:建立div,内嵌img标签,可以设置大小, <!doctype html> <html> <head> <meta charset= ...

  4. js原声快速实现选项卡

    var Rea = document.getElementById("rep"); var ReaAll = Rea.querySelectorAll("li" ...

  5. js毫秒数转换成时间格式

    Date.prototype.Format = function (fmt) { //author: meizz var o = { "M+": this.getMonth() + ...

  6. Vue的理解:Vue.js新手入门指南----转

    最近在逛各大网站,论坛,以及像SegmentFault等编程问答社区,发现Vue.js异常火爆,重复性的提问和内容也很多,楼主自己也趁着这个大前端的热潮,着手学习了一段时间的Vue.js,目前用它正在 ...

  7. Vue.js 入门指南

    1.Vue.js是什么? Vue.js(读音 /vjuː/, 类似于 view) 是一套构建用户界面的 渐进式框架.与其他重量级框架不同的是,Vue 采用自底向上增量开发的设计.Vue 的核心库只关注 ...

  8. JS模块化编程(三)

    AMD&CMD 对象字面量 对象字面量表示,其实就是用一对大括号括起来的键值对,也就是JavaScript 声明对象的方式 var myObject = {variableKey : vari ...

  9. Vue.js系列之一初识Vue

    在看vue.js之前,可以先看这两篇文章,对于为什么要使用vue会有一定帮助 1.Vue.js !important 2.界面之下:还原真实的MV*模式 !important 3.web前端优化之re ...

随机推荐

  1. concurrent.futures进行并发编程

    Python中进行并发编程一般使用threading和multiprocessing模块,不过大部分的并发编程任务都是派生一系列线程,从队列中收集资源,然后用队列收集结果.在这些任务中,往往需要生成线 ...

  2. 复旦大学2017--2018学年第二学期高等代数II期末考试情况分析

    一.期末考试成绩班级前十名 张菲诺(95).刘宇其(95).魏一鸣(93).郭宇城(92).程梓兼(91).葛珈玮(90).汪子怡(90).余张伟(90).张昰昊(89).朱柏青(89) 二.总成绩计 ...

  3. ace-editor线上代码编辑器

    package.json { "name": "vue-cli", "version": "1.0.0", " ...

  4. unity 根据平板 或者 手机 确立横竖屏

    /* ######### ############ ############# ## ########### ### ###### ##### ### ####### #### ### ####### ...

  5. 用redis构建分布式锁

    单实例的实现 从2.6.12版本开始,redis为SET命令增加了一系列选项: EX seconds – 设置键key的过期时间,单位时秒 PX milliseconds – 设置键key的过期时间, ...

  6. 用Xshell在centos7下安装lnmp服务

    虚拟机已创建好,本机已安装Xshell 一.准备工作:安装常用工具 1.1  yum install -y vim 备注:-y是同意安装过程中的询问,不被询问打断安装 vim:vim是一个类似于Vi的 ...

  7. MyBatis进阶(四)

    mapper.xml文件的编写 mapper.xml映射文件实现数据库和实体类之间的映射关系,定义操作数据库的sql语句. 主体部分 文件头部 <?xml version="1.0&q ...

  8. 在linux上运行网页程序及日志文件查看

  9. gitlab-runner部署

    Gitlab在线安装部署参考 一.    环境 系统 版本 备注 Centos 7_64 建议使用4GB RAM和4或8个CPU内核 二.    安装并配置必要的依赖项 a)      在centos ...

  10. Unity --- 在原目录中,将选中的Texture剥离为rgb和alpha

    using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEditor; us ...