一,new操作符到底干了什么?

1,立刻创建一个新的对象
2,obj.__proto__=Fun.prototype 方法或者属性,赋值
3,将this指向这个新创建的对象
4,顺序执行构造函数中的this
5,将新创建的对象作为返回值

二,js的延迟加载

JS延迟加载,也就是等页面加载完成之后再加载 JavaScript 文件。
JS延迟加载有助于提高页面加载速度。
主要有以下几种方式:

defer 属性
async 属性
动态创建DOM方式
使用jQuery的getScript方法
使用setTimeout延迟方法
让JS最后加载

1,defer
HTML 4.01 为

<!DOCTYPE html>
<html>
<head><script src="test1.js" defer="defer"></script><script src="test2.js" defer="defer"></script>
</head>
<body>
<!-- 这里放内容 -->
</body>
</html>

2,async 属性
HTML5 为

<!DOCTYPE html>
<html>
<head><script src="test1.js" async></script><script src="test2.js" async></script>
</head>
<body>
<!-- 这里放内容 -->
</body>
</html>

3.动态创建DOM方式
4.使用jQuery的getScript()方法

$.getScript("outer.js",function(){//回调函数,成功获取文件后执行的函数  console.log("脚本加载完成")
});

5.使用setTimeout延迟方法
6.让JS最后加载
把js外部引入的文件放到页面底部,来让js最后引入,从而加快页面加载速度

三,严格模式

ES5的严格模式是采用具有限制性javaScript变体的一种方式,即在严格的条件下运行。解决一些js的怪癖行为
好处:代码更加严谨,检测代码,压缩的时候节约文件大小
缺点:一报错就会阻塞后面代码的运行,压缩时会出现错误

js基础-15-new操作符,延迟加载,严格模式相关推荐

  1. JS基础--ES5创建对象的7种模式

    以下内容总结自<JavaScript高级程序设计(第3版)> 一. 工厂模式 ES5中无法创建类,所以开发人员用函数封装以特定接口创建对象的细节. function createPerso ...

  2. JS学习日志15 -- JS基础--忍者代码

    前言 从头开始对javascript进行学习,每天定个小目标,学习一点,期待学习完后,对js的认知会发生什么变化~~ :JS基础知识 一.忍者代码 过去的程序员忍者使用这些技巧,来使代码维护者的头脑更 ...

  3. 前端工程师面试问题归纳(一、问答类html/css/js基础)

    一.参考资源 1.前端面试题及答案整理(一) 2.2017年前端面试题整理汇总100题 3.2018最新Web前端经典面试试题及答案 4.[javascript常见面试题]常见前端面试题及答案 5.W ...

  4. 2019年JS基础面试题

    #JS基础 ###1.javascript的typeof返回哪些数据类型 string number array object function Boolean undefined 数组(Array) ...

  5. 自学JavaScript第一天- JS 基础

    自学JavaScript第一天- JS 基础 JS 写在哪里 注释 行内 js 内部 js 外部 js JS 基础语法 语句 大小写 代码块 折行 变量 声明 var .let.const 及作用域 ...

  6. 【 js基础 Day2】js的流程控制:分支语句,循环.顺序结构

    复习 JavaScript简称为JS JavaScript是什么? 是一门脚本语言:不需要编译,直接运行 是一门解释性的语言:遇到一样代码就解释一行代码 C#语言是一门面向对象的语言,也是编译语言,是 ...

  7. JS 基础面试题 2019年最新前端面试题目

    1.js基础 1.eval是做什么的? 它的功能是把对应的字符串解析成JS代码并运行: 应该避免使用eval,不安全,非常耗性能(2次,一次解析成js语句,一次执行). 由JSON字符串转换为JSON ...

  8. 【译】一份通俗易懂的React.js基础指南-2018

    原文链接:tylermcginnis.com/reactjs-tut- by Tyler McGinnis 这篇文章最初发表于2015年1月,但最近被更新为React 16.3以及它所包含的所有优点. ...

  9. 区块链教程(四):搭建私链、web3.js基础

    注:本教程为技术教程,不谈论且不涉及炒作任何数字货币 区块连教程(一):前置知识-linux补充 区块链教程(二):基础概念介绍 区块链教程(三):Solidity编程基础 区块链教程(四):搭建私链 ...

  10. 前端面试题汇总(JS 基础篇)

    前端面试题汇总(JS 基础篇)** 1.javascript 的 typeof 返回哪些数据类型** object number function boolean underfind stringty ...

最新文章

  1. 数学建模大赛赛题解析:Mathorcup高校数学建模挑战赛-环形穿梭车的设计与调度
  2. Apache通过配置.htaccess文件禁止访问.git、.svn等目录
  3. python idle在哪_python安装包里idle在哪
  4. array_multisort - 如何保持键值,不重置键值,键名保持不变
  5. 前端学习(1654):前端系列实战课程之js运行代码
  6. c语言以顺序结构存储的二叉树的非递归遍历,C语言二叉树的非递归遍历实例分析...
  7. 基于 Springboot 和 Mybatis 的后台管理系统 BootD
  8. ajax访问遇到Session失效问题
  9. php获取apk中文应用名,php提取apk包信息 - 搜知道网 - 搜知道社区,C, iOS,Android,golang 等的知识....
  10. 马哥Linux--elasticsearch
  11. 05引用类型以及特殊引用类型string
  12. 致Android开发者:APP 瘦身经验总结
  13. Atitit.注解解析(1)---------词法分析 attilax总结 java .net
  14. 如何对自己定义的目标进行分解
  15. HDU6069 Counting Divisors
  16. tensorflow的安装和求解泊松方程
  17. 【Jenkins】win 10 / win 11:Jenkins 的下载、安装、部署(Jenkins 2.365 基于 Java 17)
  18. 软件理论基础学习笔记——图灵机
  19. 实验八:Winwebmail的搭建
  20. Linux内核源代码获取教程

热门文章

  1. 泛型的意义与通配符理解
  2. 用tomcat6修改java内存_Tomcat 服务器内存修改
  3. 版本 tomcat_Tomcat爆出安全漏洞!Spring Cloud/Boot框架多个版本受影响
  4. 1347 格子游戏 (并查集)
  5. 数据结构算法基础定义
  6. 四十三 Python分布式爬虫打造搜索引擎Scrapy精讲—elasticsearch(搜索引擎)的mapping映射管理...
  7. DELPHI 对象的本质 VMT
  8. smalot-bootstrap-datetimepicker 使用心得
  9. Android使用本地广播
  10. 用nginx转发请求tomcat 如何配置访问日志获取真实ip