1.JSON
语法是 JavaScript 对象表示法语法的子集。
JavaScript 函数 eval() 可用于将 JSON 文本转换为 JavaScript 对象
var obj = eval ("(" + txt + ")");
JSON.stringify:序列化成字符串
JSON.parse:反序列化成对象
2.jQuery
元素选择器
jQuery 使用 CSS 选择器来选取 HTML 元素。
$("p") 选取 <p> 元素。
$("p.intro") 选取所有 class="intro" 的 <p> 元素。
$("p#demo") 选取所有 id="demo" 的 <p> 元素。
jquery和Dom对象相互转换:
dom--->jquery :$(dom对象)
jquery----->dom: $("li")
jQuery 使用 XPath 表达式来选择带有给定属性的元素。
$("[href]") 选取所有带有 href 属性的元素。
$("[href='#']") 选取所有带有 href 值等于 "#" 的元素。
$("[href!='#']") 选取所有带有 href 值不等于 "#" 的元素。
$("[href$='.jpg']") 选取所有 href 值以 ".jpg" 结尾的元素。
$("p").css("background-color","red");
$是jQuery的简写
jQuery方法:http://www.w3school.com.cn/jquery/jquery_ref_dom_element_methods.asp
jQuery事件:http://www.w3school.com.cn/jquery/jquery_ref_events.asp
$(function(){})是$("document").ready(function(){})的简写
3.ajax
ajax可以通过ajax库和jquery(jquery有ajax封装)完成
1.XMLHttpRequest 是 AJAX 的基础
2.jQuery ajax :$.load , $.get , $.post 等
4.JavaScript(ES6)
弱类型(不检查数据类型),动态语言 (无编译检查)
6种数据类型:number、string(单引号或双引号)、object、undefine(变量创建后为赋值)、null
对象操作语句:with(对象操作省去 对象.属性/方法 访问的方式),this,new。
类:this.变量 (内部定义成员变量)
匿名对象 a={} a.b=c//单个对象添加成员 class.prototype.b//所有对象都会添加
函数参数:参数不限制,多传参数被忽略,少传undefine
静态函数:类型的原型添加函数(外部添加),对象原型种添加不影响其他对象
公有函数:prototype中添加
匿名函数:回调方式调用
数组:array对象
事件:bind\delegate\live\on----unbind\undelegate\die\off bind添加数据到document;delegate效率最高存数据,执行需要查询;on最原始的绑定;live老版本
对象(基类object):
1.对象={属性:值,属性:值}
2.带参数的构造
3.object.create()
4.object.member访问或者object[member string]访问
深拷贝:
for(var a in object) 递归
JIT即时编译(缓存指令去重复),脚本引擎核心。 google v8编译器都采用了JIT方式加速Javascript
js:只有对象传递使用引用,ts:tsc命令编译生成js
定时器:window.settimeout
线程:work(文件)
js相互调用:<script language="JAVASCRIPT" src='b.js?a=2'></script> 调用b(),参数通过
document.getElementByTagName('script')解析后获取 js类:传统定义function person(id,name,age){this.id=id;this.name=name;this.age=age;}
var p = new Person(1,'tom',24); this指向调用该方法的对象
json方式定义类var p={id:1,name:'tom',age:24}
5.Web模版引擎
<script>标签template模版不显示
web模版:ejs、jade
Web模版引擎:服务端引擎和客户端引擎,分离数据和视图
6.html
静态URL、动态URL
form发送请求数据,或者通过ajax
SPA单页面应用(页面切换快,seo差,首页加载慢)、MPA多页面应用(页面切换慢,seo好)
7.跨域请求
浏览器一般禁止网页,跨域请求其他域名的数据,一般可以通过后端请求避免。