js工作总结

JSON.stringify(value [, replacer] [, space])

value:是必须要的字段。就是你输入的对象,比如数组啊,类啊等等。
replacer:这个是可选的。它又分为2种方式,一种是方法,第二种是数组。
space:很好理解,用什么来做分隔符的。
1.如果省略的话,那么显示出来的值 就没有分隔符。直接输出来
2.如果是一个数字的话,那么它就定义缩进几个字符,当然 如果大于10 ,则最大值为10.
3.如果是一些转义字符,比如“\t”,表示回车,那么它每行一个回车。
4.如果仅仅是字符串,OK,就在每行输出值的时候把这些字符串附加上去就OK。当然,最大长度也是10个字符。

类型的检查

检测非数字:

isFinite() 如果 number 是有限数字(或可转换为有限数字),那么返回 true。否则,如果 number 是 NaN(非数字),或者是正、负无穷大的数,则返回 false。

检测NaN

Number(num) !== Number(num)

检测undefined 和 null

type == null

构造函数
函数作为构造函数调用创建一个新的空对象, 这个对象继承自构造函数的prototpe属性。构造函数试图初始化这个心创建的对象,并将这个对象用做起调用上下文,因此构造函数可以使用this关键字来引用这个新创建的对象。注意,尽管构造函数看起来像一个方法调用,它依然会使用这个新对象最为调用上下文。也就是说,在表达式new o.m(), 调用上下文并不是o

参数默认值
参数默认值
es5
function(a) {
if(a === undefined) a=[]
or
a = a || a[] 但是这个a必须提前声明,否则会报引用错误
}
标识符argular指向实参,大多数情况下JavaScript的默认行为是可以满足需要的:省略的实参都将是undefined,多出的参数会自动省略
callee和caller属性
非严格模式下:
callee函数表示当时正在执行的函数,
caller返回一个对函数的引用,该函数调用了当前函数。
functionName.caller
functionName 对象是所执行函数的名称。
说明
对于函数来说,caller 属性只有在函数执行时才有定义。 如果函数是由 Javascript 程序的顶层调用的,那么 caller 包含的就是 null 。

forEach: 不能break退出循环, 不能有return 返回到最外层

(for…in)、Object.keys()、 Object.getOwnPropertyNames()区别
for…in循环
返回的是所有能够通过对象访问的、可枚举的属性,既包括存在于实例中的属性,也包括存在原型中的实例

闭包
闭包与函数有着紧密的关系,他是函数的代码在运行过程中的一个动态环境,是一个运行期的、动态的概念
所谓闭包,是指词法表示包括不必计算的变量的函数。也就是说,该函数能够使用函数外定义的变量。
在程序语言中,所谓闭包,是指语法域位于某个特定的区域,具有持续参照(读写)位于该区域内自身范围之外的执行域上的非持久型变量值能力的段落。这些外部执行域的非持久型变量神奇地保留他们在闭包最初定义(或创建)时的值

var name = 'xiao A'
var obj = {
	name: 'xiao B',
		getName: function() {
			var o = this
			return function() {
				return o.name
	}
 }
}

console.log( obj.getName()() )  --> 'xiao B'
闭包: 一个函数 可以访问另外一个函数作用域的变量
封闭性: private 祈祷一个保护变量的作用
function f(x) {
	var temp = x
	return function(x) {
		temp += x
		alert(temp)
	}
}
var a = f(50)
a(5)
a(10)
a(20) 

video & flash
优点: 不需要下载额外资源
比如: flash播放器需要下载.swf 辅助插件,控制简单有较为玩真的api
缺点: 每个浏览器的外观都不一样,要统一需要自己来写ui实现
flash播放优缺点
有优点: 兼容性好,只要有flash player播放器插件,都可以进行播放
缺点: 1,需要下载额外的swf播放文件才可以播放,浏览器必须有flash player插件
2 flash player 版本的碎片化
3 ui定制需要写as

js工作总结_第1张图片

视频资源加载前置: (以样式表的形式加载资源)



js工作总结_第2张图片
js工作总结_第3张图片
js工作总结_第4张图片

js工作总结_第5张图片

js工作总结_第6张图片

js工作总结_第7张图片
Object.create

js工作总结_第8张图片

expires http 1.0使用

js工作总结_第9张图片

js工作总结_第10张图片

js工作总结_第11张图片

js工作总结_第12张图片

js工作总结_第13张图片

老版浏览器 innerHTML 会快一点
新版浏览器 document.createDocumentFragment() 会快一点
js工作总结_第14张图片

npm install @types/jquery --save
npm install @types/bootstrap --save
让ts认识js代码

angularJs 生成组件
ng g component navbar

你可能感兴趣的:(JavaScript)