JavaScript发展史,与JScript差别,引入方式,数据类型,命名规范,命名推荐,解决命名冲突


文件夹:
1、JavaScript发展史
2、JavaScript与JScript差别
3、JavaScript引入方式
4、JavaScript基本数据类型及布尔值
5、JavaScript命名规范
6、JavaScript命名推荐
7、JavaScript解决命名冲突

1、 JavaScript发展史
1.Netscape发明了JavaScript(1992年后)

1)出现JavaScript的原因(Netscape Navigator)

* 网络的不断普及与推广,有庞大的用户量
* 因为当时的差点儿全部的网速都在28.8Kbit/s。网页用户体验不好
* 表单验证的须要,当时的每次表单验证。都是须要提交server,即使仅仅有一条或者说当中一个字符不符合要求,所有的信息将都要重写。

而且响应速度也相当的慢

2)JavaScript的发展历程
 
* 在1995年公布了Netscape Navigator 2.0开发LiveScript脚本语言;由Netscape 与 Sun完毕 实现了LiveScript。
* 在正式公布Netscape Navigator 2.0前,Sun与网景公司达成协议,SUN公司借助了Java的地位与热度,将LiveScript改成了JavaScript。  从而迅速得到了推广。
* 后来微软公司公布了IE3.0并搭载了JScript(JavaScript的克隆版),此时。JavaScript1.1版本号也公布了;
* 1997年JavaScript1.1 作为一个草案提交给欧洲计算机制造商协会(ECMA),从而使当时的主流公司以及网页编程爱好者。极力的推广JavaScript,使得JavaScript得到了前所未有的发展;ECMAScript+DOM+BOM===Javascript 
* 2009.12 公布ECMAScript5.0<- HTML5.0—>API接口; node.js(后台)
  2014 公布了ECMScript6.0


2、 JavaScript与JScript差别
1.最開始web上仅仅有静态的html
2.为了满足更好的交互需求,netscape开发了在Navigator中使用的LiveScript语言。后改名为JavaScript
3.Microsoft发行jscript用于internet explorer.
4.最初的jscript和javascript差异过大,web程序猿不得不痛苦的为两种浏览器编写两种脚本。
  于是诞生了ECMAScript,是一种国际标准化的javascript版本号。如今的主流浏览器都支持这样的版本号。
5.我们敲代码的时候最好写<script language=javascript>而不是<script language=jscript>由于javascript
  是一个通用的名称。全部浏览器都认识,而jscript仅仅有IE认识。
6.其它语言细节上的差别。不是一两下能说完的。只是我个人觉得编程时最好遵循ECMAscript标准。

这样能够保证兼容性。 7.顺便说一下,javascript原来叫Livescript,后来Sun的java风头正盛的时候netscape就把名字改成javascript。


3、JavaScript三种引入方式


4、JavaScript基本数据类型及其布尔值以及数据类型转换

JS的基本数据类型包含:BooleanStringNullNumberObjectUndefined

  undefined 布尔值 false   
  null的布尔值为false
  undefined == null  结果为true

  显式转换:通过手动进行类型转换。Javascript提供了下面转型函数:

转换为数值类型  :  Number(mix)parseInt(string,radix)parseFloat(string)

转换为字符串类型:  toString(radix)String(mix)

转换为布尔类型  :  Boolean(mix)

隐式转换:在某些情况下,即使我们不提供显示转换,Javascript也会进行自己主动类型转换

至于具体的显示隐身转换可參见博客:http://t.cn/zlWtl49

 数字→字符串: 200 + '' == "200"   [加一个空字符型]

 字符串数字: "200" * 1 == 200 或者 "200" - 0 == 200  [乘以1或者减去0]

③ Number( ): 用于将不论什么数据类型转换为数值

Numbertrue

1

Numberfalse

0

NumberNaN

NaN

NumberUndefined

NaN

NumberNull

   0

 

     

               

 

   

 



 ④ parseInt( ): 用于将字符串转换成整数型

      []遇到非数字,会自己主动停止,取当前字符串前面的数字,假设前面没有数字,直接字母开头,返回NaN

       Eg: console.log(parseInt('g54'));    // 输出NaN

 Egconsole.log(parseInt('0628'));   // 输出628  自己主动忽略掉0开头的字符串  

     parseInt( ); 进行进制的转换

       二进制    Egconsole.log(parseInt(1102));   // 输出6

       八进制    Egconsole.log(parseInt(16,8));     // 输出14

       十六进制  Egconsole.log(parseInt(15,16));    // 输出 F

     [] 当要转换的数值超过所要转换的进制数的时候,会出现输出NaN  EgparseInt(8,8; // NaN

公式: parseInt(数值,要转换的N进制)

parseInt在不同浏览器存在兼容问题,parseInt0x10);依照16进制进行转换

parseInt010);IE6会依照八进制进行转换,谷歌火狐IE9+等浏览器会依照10进制进行转换

 parseFloat( )用于将字符串 转换为 "浮点型数据"(即小数),parseFloat() 方法与 parseInt() 方法的处理方式相似,从位置 0 開始查看每一个字符。直到找到第一个非有效的字符为止,然后把该字符之前的字符串转换成整数。

 Boolean( )当要转换的值是至少有一个字符的字符串、非 0 数字或对象时,Boolean() 函数将返回 true。假设该值是空字符串、数字 0undefined 或 null。它将返回 false

    var b1 = Boolean("");            //false -  空字符串

    var b2 = Boolean("hello");       //true -   非空字符串

    var b1 = Boolean(50);            //true -   非零数字

    var b1 = Boolean(null);          //false -  null

    var b1 = Boolean(0);             //false -  

    var b1 = Boolean(new object());  //true -   对象


⑦ String():它可把不论什么值转换成字符串,要运行这样的强制类型转换,仅仅须要调用作为參数传递进来的值的 toString()法。即把 12 转换成 "12",把 true 转换成 "true"。把 false 转换成 "false"。以此类推。

   强制转换成字符串和调用 toString() 方法的唯一不同之处在于,对 null 和 undefined 值强制类型转换能够生成字符串而不引发错误;toString()里面能够写须要转换成的几进制

   var s1 = String(null); // "null"
   var oNull = null;  
     var s2 = oNull.toString();  // 会引发错误 

5、JavaScript命名规范
1、区分大写和小写
2首写符必须是字母,下划线( _ )或者美元符($)
3、除首字母外的字符。能够由字母。数字。下划线,美元符号组成
4、不同意包括空格
5、不能以keyword或保留字命名

6、JavaScript命名推荐
1、尊徐小驼峰命名法(除了第一个单词首字母之外。组成标示符的每一个单词的首字符均大写)
2、变量/属性命名:名词开头
3、常量命名:字母所有大写,假设出现多个单词组合,用下划线连接
4、构造函数 函数名称:首字母大写,同一时候遵循小驼峰命名规范
5、对个类似的声明,能够使用一个var,不同变量之间用逗号分隔,每一个变量须要单独的一行。同一时候保证变量名称左对齐
7、JavaScript解决命名冲突
 1、协同命名法
 2、对象命名空间
 3、匿名函数



原文地址:https://www.cnblogs.com/lcchuguo/p/5093428.html