JS随笔(1)

1.JS分为三个部分组成,分别是 ECMASCRIPT,BOM,DOM
ECMASCRIPT定义了javascript的语法规范,描述了语言的基本语法和数据类型
BOM(Browser Object Model)即浏览器对象模型,通过BOM可以操作浏览器窗口,比如:弹出框、控制浏览器跳转、获取分辨率等
DOM (Document Object Model) 文档对象模型,一套操作页面元素的API,DOM可以把HTML看做是文档树,通过DOM提供的API可以对树上的节点进行操作
2.null转换为数值时是0,undefined转化为数值是NaN,true是1,false是0
3.parseInt(变量)取整,parseFloat(变量)取浮点, 变量.toString()和String(变量),Boolean(n) 
4.优先级从高到底
    1. ()  优先级最高   
    2. 一元运算符  ++   --   !
    3. 算数运算符  先*  /  %   后 +   -
    4. 关系运算符  >   >=   <   <=
    5. 相等运算符   ==   !=    ===    !==
    6. 逻辑运算符 先 &&   后||
    7. 赋值运算符 =
5.函数调用必须带()
6.undefined代表变量创建但没赋值
7.new关键字执行过程
    1. 在内存中创建一个空对象
    2. this指向创建的对象
    3. 执行函数 --- 给空对象添加属性和方法
    4. 返回当前对象(所以构造函数不需要return)
8.Math对象计算两个数间的随机数
    Math.floor( Math.random() * (m - n + 1) + n );
    Math.floor( Math.random() * (大数 - 小数 + 1) + 小数 );
9.内置对象Math,Date,Array,String,事件对象event
10.concat连接数组但是不改变原数组,splice删除数据会改变数组,sort排序会改变数组,pop出栈返回最后一个最后一个元素,改变数组,trim会去除字符串两端的空格,返回一个新字符串,不改变原来的字符串
11.call()可以修改this指向,在ES5中实现继承。fn.call(想要新this指向的对象,fn的参数)
12.静态成员:在构造函数本身上添加的成员称为静态成员,只能由构造函数本身来访问
     实例成员:在构造函数内部创建的对象成员称为实例成员,只能由实例化的对象来访问
13.遍历对象,返回key的数组Object.keys(对象)
14.闭包    function fn(){
                //局部变量
                var a =10;
                return function (){
                        return a;
                }
        }
        var back = fn();
        var a = back();
        console.log(a);
15.只有在方法里创建的变量叫局部变量

你可能感兴趣的:(javascript)