0%
js动态调用特性
JS 的动态调用特性是 JS 动态特性中重要的组成部分,提到这个特性就需要讲明白bind
,call
,apply
这三个函数
JS函数的调用机制
js 里函数调用有 4 种模式:方法调用、正常函数调用、构造器函数调用、apply/call 调用。无论哪种函数调用除了你声明时定义的形参外,还会自动添加 2 个形参,分别是 this 和 arguments。arguments 是一个 array-like 类型对象,提供了 length 和下标操作符访问元素的方法,但是却没有提供其他任何数组对象应有的方法。
this 到对象的绑定是一个超级延迟绑定,这个绑定发生在函数调用的时候,this 代表的也就是主调方对象。这实现了 JS 的强大动态特性。
js作用域
先说结论,在 JavaScript 中,作用域只有两种。全局作用域(window)和局部作用域(函数)。
全局作用域中的所有对象均为 window 对象的属性。局部作用域(函数)中的所有对象在整个函数范围内均是可见的,也就是说 JavaScript 没有类似其他语言中的块级作用域。
浅析 jQuery deferred 对象
JS运行机制
ng-route多视图路由
ng-view
是一个优先级为1000的终极指令。AngularJS 不会运行同一个元素上的低优先级指令。这个指令是一个特殊的指令,用于为$route
对应内容提供占位
- 每次触发
$routeChangeSuccess
事件,视图都会更新。 - 如果某个模板同当前的路由相关联:
- 创建一个新的作用域
- 移除上一个视图,同时上一个作用域也会被清除
- 将新的作用域同当前模版关联在一起
- 如果路由中有相关的定义,那么就把对应的控制器同当前作用域关联起来
- 触发
$viewContentLoaded
事件 - 如果提供了onload属性,调用该属性所指定的函数
使用 AngularJS 路由,需要在 angular.js
之后引入 angular-route.js
。
$ionicHistory 学习
$ionicHistory 是 ionic 框架实现的一套记录页面导航路径的方式。它可以跟踪用户在 app 内的浏览记录。它可以跟踪用户的当前页面,父页面和子页面(如果有)。
与浏览器不同的是,它可以跟踪多个平行的用户页面历史,比如多个 tab 的单页面应用。
JS创建对象的方式
JS代码到底要放在什么位置
<head></head>
之间之放置统计脚本,全局变量等等与页面逻辑无关的 js 代码。- 引入页面逻辑相关 js 库的标签放在底部。
- 自定义的 js 代码放在引入 js 库的下面,也就是整个页面的最底部。