js --"说声爱你不容易"
<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 --"说声爱你不容易"的更多相关文章
- 爬虫必看,每日JS逆向之爱奇艺密码加密,今天你练了吗?
友情提示:优先在公众号更新,在博客园更新较慢,有兴趣的关注一下知识图谱与大数据公众号,本次目标是抠出爱奇艺passwd加密JS代码,如果你看到了这一篇,说明你对JS逆向感兴趣,如果是初学者,那不妨再看 ...
- Respond.js – 让不懂爱的 IE6-8 支持 CSS3 Media Query
respond.min.js <script src="js/respond.min.js"></script> respond.min.js代码: /*! ...
- js原声代码 轮播图
js轮播图 html部分:建立div,内嵌img标签,可以设置大小, <!doctype html> <html> <head> <meta charset= ...
- js原声快速实现选项卡
var Rea = document.getElementById("rep"); var ReaAll = Rea.querySelectorAll("li" ...
- js毫秒数转换成时间格式
Date.prototype.Format = function (fmt) { //author: meizz var o = { "M+": this.getMonth() + ...
- Vue的理解:Vue.js新手入门指南----转
最近在逛各大网站,论坛,以及像SegmentFault等编程问答社区,发现Vue.js异常火爆,重复性的提问和内容也很多,楼主自己也趁着这个大前端的热潮,着手学习了一段时间的Vue.js,目前用它正在 ...
- Vue.js 入门指南
1.Vue.js是什么? Vue.js(读音 /vjuː/, 类似于 view) 是一套构建用户界面的 渐进式框架.与其他重量级框架不同的是,Vue 采用自底向上增量开发的设计.Vue 的核心库只关注 ...
- JS模块化编程(三)
AMD&CMD 对象字面量 对象字面量表示,其实就是用一对大括号括起来的键值对,也就是JavaScript 声明对象的方式 var myObject = {variableKey : vari ...
- Vue.js系列之一初识Vue
在看vue.js之前,可以先看这两篇文章,对于为什么要使用vue会有一定帮助 1.Vue.js !important 2.界面之下:还原真实的MV*模式 !important 3.web前端优化之re ...
随机推荐
- md5 collision(md5碰撞)之记录一些MD5值
md5 collision之记录一些MD5值 “Magic Hash”的PHP漏洞可以使得攻击者非法获取用户的账号信息. 漏洞原因: PHP以一种特定的方式处理被哈希的字符串,攻击者可以利用其 ...
- 自动化测试系列:将常用的Android adb shell 命令行封装为C#静态函数
更多原创测试技术文章同步更新到微信公众号 :三国测,敬请扫码关注个人的微信号,感谢! 简介:adb命令是常用的Android命令行,自动化.代码调试.手工排查问题都会用的到,这里将常用的一些命令行封装 ...
- Gradle安装和在Eclipse中的使用
Gradle是一个基于Apache Ant和Apache Maven概念的项目自动化构建开源工具.它使用一种基于Groovy的特定领域语言(DSL)来声明项目设置,抛弃了基于XML的各种繁琐配置. 1 ...
- Numpy 基础
Numpy 基础 参考https://www.jianshu.com/p/83c8ef18a1e8 import numpy as np 简单创建数组 # 创建简单列表 a = [1, 2, 3, 4 ...
- Ubuntu 下将 svg 图片转换为其他格式 (如 png)
参考 How to Convert SVG Files to other Image Formats on Ubuntu 12.04/11.10 Ubuntu 下将 svg 图片转换为其他格式 (如 ...
- 说说Python中的闭包
Python中的闭包不是一个一说就能明白的概念,但是随着你往学习的深入,无论如何你都需要去了解这么一个东西. 闭包的概念 我们尝试从概念上去理解一下闭包. 在一些语言中,在函数中可以(嵌套)定义另一个 ...
- Gradle 简记
不是 Gradle,就是 Maven吧.对比下: Maven: 推荐(?)了一个默认的项目结构和生命周期,但是太过死板 虽然暴露了 API 接口,但是插件定制太过复杂 和 Ant 一样,仍然无法表达复 ...
- intelliJ idea常用快捷键 mac版
目录 coding project coding Command + P 显示方法参数信息 Command + N 自动生成getter.setter.hashCode.equals.toString ...
- stylus入门学习笔记
title: stylus入门学习笔记 date: 2018-09-06 17:35:28 tags: [stylus] description: 学习到 vue, 有人推荐使用 stylus 这个 ...
- js switch 字符串
//字符串var day="dd";switch (day){case "dd": x="day it's dd"; break;case ...