每日记载内容总结28-创新互联
1.几个需要注意的javascript知识:(原文来自:http://www.cnblogs.com/yanhaijing/p/3465237.html)
名称栏目:每日记载内容总结28-创新互联
标题URL:http://ybzwz.com/article/dsdpgd.html
(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是被禁用的,然后,在此基础上,逐步增强你的网站。
名称栏目:每日记载内容总结28-创新互联
标题URL:http://ybzwz.com/article/dsdpgd.html