Js相关
Js相关
Js的基础类型,typeof和instanceof的区别
数组的forEach和map方法有哪些区别?常用哪些方法去对数组进行增、删、改
闭包和作用域
实现一个类以关键字new功能的函数
如何实现继承(原型和原型链)
箭头函数和普通函数有什么区别
迭代器(iterator)接口和生成器(generator)函数的关系
浏览器的事件循环机制
...大约 80 分钟
Js相关
Js的基础类型,typeof和instanceof的区别
数组的forEach和map方法有哪些区别?常用哪些方法去对数组进行增、删、改
闭包和作用域
实现一个类以关键字new功能的函数
如何实现继承(原型和原型链)
箭头函数和普通函数有什么区别
迭代器(iterator)接口和生成器(generator)函数的关系
浏览器的事件循环机制
JavaScript 有着很奇怪的命名史。
1995 年,它作为网景浏览器(Netscape Navigator)的一部分首次发布,网景给这个新语言命名为 LiveScript。一年后,为了搭上当时媒体热炒 Java 的顺风车,临时改名为了 JavaScript (当然,Java 和 JavaScript 的关系,就和雷锋和雷锋塔一样 —— 并没有什么关系)
<small class="img-hint">
歪果仁的笑话怎么一点都不好笑</small>
译者注:wikipedia 的 JavaScript 词条 更详细的叙述了这段历史
Here comes Module!
随着网站逐渐变成「互联网应用程序」,嵌入网页的 JavaScript 代码越来越庞大,越来越复杂。网页越来越像桌面程序,需要一个团队分工协作、进度管理、单元测试……我们不得不使用软件工程的方法,来管理网页的业务逻辑。
于是,JavaScript 的模块化成为迫切需求。在 ES6 Module 来临之前,JavaScript 社区提供了强大支持,尝试在现有的运行环境下,实现模块的效果。
通过 js 判断 moblie 端和 pc 端进而加载不同的 css 或者 js
<script type="text/javascript">
function browserRedirect() {
var sUserAgent = navigator.userAgent.toLowerCase();
var bIsIpad = sUserAgent.match(/ipad/i) == "ipad";
var bIsIphoneOs = sUserAgent.match(/iphone os/i) == "iphone os";
var bIsMidp = sUserAgent.match(/midp/i) == "midp";
var bIsUc7 = sUserAgent.match(/rv:1.2.3.4/i) == "rv:1.2.3.4";
var bIsUc = sUserAgent.match(/ucweb/i) == "ucweb";
var bIsAndroid = sUserAgent.match(/android/i) == "android";
var bIsCE = sUserAgent.match(/windows ce/i) == "windows ce";
var bIsWM = sUserAgent.match(/windows mobile/i) == "windows mobile";
// document.writeln("您的浏览设备为:");
if (bIsIpad || bIsIphoneOs || bIsMidp || bIsUc7 || bIsUc || bIsAndroid || bIsCE || bIsWM) {
// alert("手机浏览!");
} else {
// alert("PC浏览!");
document.write("<script type='text/javascript' size='150' alpha='0.8' zIndex='-10' src='../js/dist/ribbon.js'><\/script>");
document.write("<script type='text/javascript' color='0,188,212' opacity='0.7' zIndex='-2' count='99' src='http://cdn.bootcss.com/canvas-nest.js/1.0.1/canvas-nest.min.js'><\/script>");
}
}
browserRedirect();
</script>