编写可维护javascript

Posted petewell

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了编写可维护javascript相关的知识,希望对你有一定的参考价值。

for-in:对象属性遍历

var prop,obj=a:1.b:2,c:3;
for (prop in obj) 
    if (obj.hasOwnProperty(prop)) 
        //遍历只属于该对象的属性
    

in:判断属性在对象中是否存在

var obj=
    cnt:0,
    related:null
;
if("cnt" in obj)
    //do some code

instanceof:判断一个变量是否某个js 对象( 非dom对象)的实例

typeof:判断运算数的类型
  • 返回number,boolean,string,function,object,undefined

处理错误

  • 自定义错误

function MyError(msg)
    this.msg=msg;

MyError.prototype = new Error();
  • try-catch-finally

基于对象继承:不破坏源对象

var person=
  age:11,
  name:‘virgil‘
;
var myPerson=Object.create(person);
myPerson.age=12;
console.log(myPerson.age,person.age);//12 11

基于类型继承

function Person(name)
    this.name;


function Author(name)
    Person.call(this,name); //继承构造器


Author.prototype = new Person(); //原型继承

禁止修改

  • preventExtension #防止扩展
  • seal #密封
  • freeze #冻结

引用

  • Array非固定长度,可以动态增删,因此数组是引用类型

    var arr=[1,2,3];
    var arrRef=arr;
    arr.push(4);
    console.log(arrRef);
    

作用域链

  • 全局作用域中,该链中有且只有一个对象,即全局对象
  • 函数中,有两个对象,先会被访问到的是调用对象,然后是全局对象

javascript核心概念及实践》

原文:大专栏  编写可维护javascript


以上是关于编写可维护javascript的主要内容,如果未能解决你的问题,请参考以下文章

豆瓣8.2分:《编写可维护Javascript》

编写可维护的css

编写可维护的网络爬虫的最佳实践是啥?

编写可维护的javascript

如何编写可维护的 UI 屏幕?

程序员使用啥技术来编写可维护的集成/功能/验收测试?