网站改进建议有哪些,做本地网站卖,wordpress uploads 权限,台州网站建设开发为什么80%的码农都做不了架构师#xff1f; 弱类型语言 JavaScript是一种弱类型的语言。变量可以根据所赋的值改变类型。原始类型之间也可以进行类型转换。其弱类型的物质为其带来了极大的灵活性。 注意#xff1a;原始类型使用值传递#xff0c;复合类型使用… 为什么80%的码农都做不了架构师 弱类型语言 JavaScript是一种弱类型的语言。变量可以根据所赋的值改变类型。原始类型之间也可以进行类型转换。其弱类型的物质为其带来了极大的灵活性。 注意原始类型使用值传递复合类型使用引用传递。 原始类型 Key 布尔型 bool 数值型 number 字符串型 string 空类型 null 未定义类型 undefined toString方法可以把数值或布尔值转换为字符串。parseFloat和parseInt函数可以把字符串类型转变为数值。双重非『!!』可以把字符串或数值转变为布尔值。 复合类型Key对象 object函数 functionprototype JavaScript是一种基于原型的语言所以我们可以通过对JavaScript对象的原型进行操作来达成一些目的。比如 给某个对象添加方法给某个对象添加属性实现类似面向对象的功能...如果把JavaScript中的所有元素都当成对象来看待的话我们可以得到一个合理的数据存储方式JSON。 在JavaScript内部所有的元素都可以认为是以JSON方式进行存储的。换言之每一个元素都是有Key以及Value两部分组成。所以以下给对象Anim添加方法的方式都是正确的 // Anim Classvar Anim function() { // ...};// Add function to AnimAnim.prototype.start function() {};Anim.prototype.stop function() {};// Another Way to add function to a classAnim.prototype { start: function() { // ... }, stop: function() { // ... }}; 我们还可以使用下面的方式给Anim添加方法。这一方式是将prototype.method看作是一个key将function(name,fn)看作是一个value然后通过给function(name,fn)传入对应的参数来实现给Anim添加方法的目的。我们还在method中加入了return this以此来实现链式调用的目的。 // Add a method to the Function object that can be used to declare methods.Function.protype.method function(name, fn) { this.prototype[name] fn; return this; // 链式调用};var Anim function() {};Anim.method(start, function() { // ...});Anim.method(stop, function() { // ...}); // Add a method to the Function object that can be used to declare methods.Function.protype.method function(name, fn) { this.prototype[name] fn; return this;};var Anim function() {};Anim.method(start, function() { // ...});Anim.method(stop, function() { // ...}); 链式调用 Anim.method(start, function() { // ...}).method(stop, function() { // ...}); 函数是一等对象 在JavaScript中『函数』被认为是带有可执行代码的复合对象。也就是说对象所拥有的函数都拥有且对象所能做的函数都可以做。 主要特性 可以存储于变量中可以作为参数传给其他函数可以作为返回值从其他函数传出可以在运行时构造。由于函数是一种对象所以我们可以以如下方式来使用函数 // Function as Object(function() { // ...})()(function(a, b) { // ... return a b})(1, 2) 对象的易变性 在JavaScript中所有的元素都可以被当成是对象而且JavaScript中所有的对象都是易变的。 我们可以使用如下的方式在程序运行时给JavaScript对象属性 可以在需要的时候给对象添加属性包括方法 function aFunction(){};aFunction.aAttribute 0; 可以在需要的时候通过对prototype的操作给JavaScript对象添加方法 function person(){ this.nameAaron; this.age14;};person.prototype { getName: function(){ return this.name; }, getAge: function(){ return this.age; }} 注意由于JavaScript可以在任何时候为已经存在的对象添加属性、方法所以我们往往不能保证最终被调用的属性、执行的方法是否是我们最初所编写的。 转载于:https://my.oschina.net/skyler/blog/706115