博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
每日记载内容总结28
阅读量:4635 次
发布时间:2019-06-09

本文共 1569 字,大约阅读时间需要 5 分钟。

1.几个需要注意的javascript知识:(原文来自:)

(1)使用 === 代替 ==

JavaScript 使用2种不同的等值运算符:===|!== 和 ==|!=,在比较操作中使用前者是最佳实践。

然而,当使用==和!=时,你可能会遇到类型不同的情况,这种情况下,操作数的类型会被强制转换成一样的再做比较,这可能不是你想要的结果。

(2)将脚本放在页面的底部

记住——首要目标是让页面尽可能快的呈献给用户,脚本的加载是阻塞的,脚本加载并执行完之前,浏览器不能继续渲染下面的内容。为避免用户等待更长时间,把与页面渲染无关的js放到body结束之前

(3)构建字符串的最优方法

当你需要遍历数组或对象的时候,不要总想着“for”语句,要有创造性,总能找到更好的办法,例如,像下面这样。

var arr = ['item 1', 'item 2', 'item 3', ...];  var list = '
  • ' + arr.join('
  • ') + '
';

(4)减少全局变量

var name = 'Jeffrey';  var lastName = 'Way';    function doSomething() {...}    console.log(name); // Jeffrey -- 或 window.name

应该转化为

var DudeNameSpace = {     name : 'Jeffrey',     lastName : 'Way',     doSomething : function() {...}  }  console.log(DudeNameSpace.name); // Jeffrey

(5)不要给"setInterval"或"setTimeout"传递字符串参数

setInterval(  "document.getElementById('container').innerHTML += 'My new number: ' + i", 3000  );转化为setInterval(someFunction, 3000);

(6)使用{}代替 new Ojbect()   使用[]代替 new Array()

创建一个新的对象:

var o = new Object();  o.name = 'Jeffrey';  o.lastName = 'Way';  o.someFunction = function() {     console.log(this.name);  }

更好的做法

var o = {     name: 'Jeffrey',     lastName = 'Way',     someFunction : function() {        console.log(this.name);     }  };

注意,如果只是想创建一个空对象,{}更好。  var o = {} ;

创建一个新的数组:

var a = new Array();  a[0] = "Joe";  a[1] = 'Plumber';

更好的做法

var a = ['Joe','Plumber'];

(7)定义多个变量时,省略var关键字,用逗号代替

(8)原生代码永远比库快,jQuery的“each”方法是伟大的循环,但使用原生"for"语句总是更快。

(9)确保javascript被禁用的情况下能平稳退化,作为一个经验法则,设计你的网站时假设JavaScript是被禁用的,然后,在此基础上,逐步增强你的网站。

转载于:https://www.cnblogs.com/cuiyf/p/3471067.html

你可能感兴趣的文章
华为机试题【10】-求数字基root
查看>>
ISLR—第二章 Statistical Learning
查看>>
软件与程序
查看>>
tiny4412u-boot烧写及根文件系统制作(不进入终端问题)
查看>>
谁说菜鸟不会数据分析--读书笔记
查看>>
nodejs里的module.exports和exports
查看>>
搭建wordpress开发环境
查看>>
CentOS 6.9下的Setup工具(用于管理服务/防火墙/网络配置/验证服务)
查看>>
Mac 10.12彻底关闭Dashboard
查看>>
mybatis大于小于等于
查看>>
mac下安装前端模板引擎Jinja2
查看>>
python 字典
查看>>
How to: Build a Client Application
查看>>
C#将dll打包到程序中
查看>>
AJAX只支持字符类数据返回,不支持文件下载
查看>>
win10使用Composer-Setup安装Composer以及使用Composer安装Yii2最新版
查看>>
Python的装饰器
查看>>
人格差异
查看>>
安装 VMware Tools
查看>>
OpenFire源码学习之二十一:openfie对用户的优化(上)
查看>>