用A链接对象解析url的组成
      var url = 'https://www.baidu.com:8080/aaa/1.html?id=10#name';
      var aLink = document.createElement('a');
      aLink.href = url;
      console.log(aLink);//
      console.log(aLink.search);//?id=10
      console.log(aLink.hash);//#name
      ...
// protocol: https
       // host: www.baidu.com:8080
       // hostname: www.baidu.com
       // port: 8080
       // pathname: /aaa/1.html
       // search: ?id=10
       // hash: #name
JSON就是用字符串描述对象的方式

angular.js常用指令:
AngularJS 属性以 ng- 开头,但是您可以使用 data-ng- 来让网页对 HTML5 有效。

ng-app:ng-app指令用来标明一个AngularJS应用程序, 标记在一个AngularJS的作用范围的根对象上, 系统执行时会自动的执行根对象范围内的其他指令 ,可以在同一个页面创建多个ng-app节点,但不推荐。 创建多个ng-app时,默认只能执行第一个,后面的需要手动引导:angular.bootstrap(document.querySelector('[ng-app="myApp2"]'),['myApp2']);但一般不用这种方式引导;正确方式为:angular.module('myApp', ['myApp1', 'myApp2']);
ng-bind:用法示例:

 

如果确实需要将HTML正确输入,使用的是ng-bind-html,同时需要引进angular-sanitize.js包,并创建一个依赖于此包的模块:angular.module('myApp',['ngSanitize']);最后确保一定要使用自己定义的模块才有效果。
ng-repeat:ng-repeat指令用来编译一个数组重复创建当前元素,如


  •   {{item.name}}
      {{item.age}}

  • 当app中有重复值时会报错,此时应该这样写:name in app track by $index;
  • (补充:name.startsWith(lastname):以lastname为开头的name的值为true----这是H5新增元素)
  • ng-class:ng-class指令可以设置一个键值对,用于决定是否添加一个特定的类名,键为class名,值为bool类型表示是否添加该类名 :ng-class="{red:$even,green:$odd}" ;ng-class也可以像普通class一样使用
  • ng-show/ng-hide:会根据属性值去确定是否展示当前元素,例如ng-show=false则不会展示该元素 ;
  • ng-if是指是否存在DOM元素 ;
  • ng-href/ng-src指令用于解决当链接类型的数据绑定时造成的加载BUG
  • ng-switch 指令根据表达式显示或隐藏对应的部分。对应的子元素使用 ng-switch-when 指令,如果匹配选中选择显示,其他为匹配的则移除。你可以通过使用 ng-switch-default 指令设置默认选项,如果都没有匹配的情况,默认选项会显示。
  • ng-checked 指令用于设置复选框(checkbox)或单选按钮(radio)的 checked 属性。如果 ng-checked 属性返回 true,复选框(checkbox)或单选按钮(radio)将会被选中。
  • ng-selected 指令用于设置