JavaScript-知识点总结(一)

JavaScript-知识点总结(一)_第1张图片

JS

变量返回值的问题

var test1 = '123';
var test2;
console.log(test1);//123
console.log(test2);//undefined (这种情况是变量定义了但是没有赋值)
console.log(test3)//ReferenceError: test3 is not defined(这种情况下是没有定义变量,更别提给变量赋值了)

变量的重新声明与赋值

1:

var billin = 'sasasa';//声明变量并赋值
var billin;//重新声明变量
console.log(billin);
结果是:sasasa//虽然重新声明了变量,但是变量的值还是原来所赋值

2:

var billin = 'sasasa';//声明变量并赋值
var billin = 'smart';
结果是:smart//重新声明变量并再次赋值以后,输出的变量的值是 就近的赋值

变量与关键字var

1:函数参数

js中的函数参数,是否用var声明的区别:
用var声明是局部 变量,不用var声明是全局变量;
因此我认为函数参数不用var声明比较好 ,可以方便参数得以调用

2:普通变量(非函数参数的变量)

建议:永远使用 var 定义变量以避免引入全局变量,因为全局变量会污染 命名空间,提高代码的耦合风险。

判断a里是否有b

a.hasOwnProperty(b);//用来判断a里面是否有b

定时器

setInterval(toRun, 1000);//前者是每隔1000毫秒执行一次toRun函数
setTimeout(toRun,1000);//后者是1000ms 后执行toRun函数,并且只执行一次
参考文档

获取服务器的当前时间

var myDate = new Date();
var timeNow = myDate.toLocaleString();//2016-08-05 09:23:47

判断浏览器渲染方式

js-document.compatMode属性

document.compatMode属性document.compatMode用来判断当前浏览器采用的渲染方式。
官方解释:
BackCompat:标准兼容模式关闭。
CSS1Compat:标准兼容模式开启。

当document.compatMode等于BackCompat时,浏览器客户区宽是document.body.clientWidth;
当document.compatMode等于CSS1Compat时,浏览器客户区宽度是document.documentElement.clientWidth。
浏览器客户区高度、滚动条高度、滚动条的Left、滚动条的Top等等都是上面的情况。
一个准确获取网页客户区的宽高、滚动条宽高、滚动条Left和Top的代码:
简单之:
解释

js-window浏览器对象

所有浏览器都支持 window 对象。它表示浏览器窗口。
所有 JavaScript 全局对象、函数以及变量均自动成为 window 对象的成员。
全局变量是 window 对象的属性。
全局函数是 window 对象的方法。
http://www.w3school.com.cn/js/js_window.asp

js-html-dom 对象 --scrollTo

scrollTo(xpos,ypos),分别是起始位置和终止位置

js获取数

Math.floor(Math.random()899+100);
Math.floor获取整数
Math.random()
899+100:获取从100到999之间的随机数

mvc

web fe -mvc
m所指,数据源
v所指,视图
c所指控制器,就是逻辑
mvc主要就是一个架构模式,用逻辑将数据显示到视图上
架构模式

模块

1:

js缺少模块管理机制

2:

模块规范
AMD-require.js
CMD-sea.js
common.js
https://github.com/seajs/seajs/issues/277
https://github.com/amdjs/amdjs-api/wiki/AMD
http://www.zhangxinxu.com/sp/seajs/


希望有更多小胖友提出宝贵意见,若有关于前端的问题,或者关于大学方面的感想可以私聊我(~):
github
知乎

个人博客
微博

你可能感兴趣的:(JavaScript-知识点总结(一))