Javascript是1995年由网景公司开发的一门原名为livescript的脚本语言,后sun公司与网景公司联合开发这门脚本语言,由于当时java语言的热烈炒作,网景公司决定蹭一波热度,自此网景公司将LiveScript正式更名为JavaScript,由此可见,Javascript与java之间除了名字外并没有其他本质上的联系,就相当于刘德华与刘德之间的关系。
Javascript是由ECMAscript,DOM,BOM所构成,其中ECMAscript主要规定了最基本的语法以及相关对象,DDOM(文档对象模型)主要描述处理网页内容的方法和接口。BOM(浏览器对象模型)描述与浏览器进行交互的方法和接口。
第一:Javascript是一门轻量级语言,轻量级语言是一类用简单句法描述简单格式的文本语言。轻量级标记语言作为一种标记语言,它的语法简单,可方便地使用简单的文本编辑器输入,原生格式接近自然语言。像我们以前学习过的html也是一门轻量级语言
第二:Javascript是一门单线程语言,说白了就是一条线走到底的一门语言
第三:Javascript是一门弱(类型)语言,意思就是Javascript没有严格的数据类型要求。
第四:Javascript是一门脚本语言, 脚本语言又被称为扩建的语言, 或者动态语言, 是一种编程语言, 用来控制软件应用程序,同时在有浏览器的地方就能够解析Javascript,这主要是浏览器中V8引擎的功劳。
1.书写在<script></script>标签内部 (<script>标签书写位置没有严格规定,但建议书写在<body>标签后面)
<script> console.log('hello world') </script>
2.书写在外部文件中
第一步:创建xxx.js文件
第二步:通过<script>标签引入.js文件
<script src="./XXX.js"></script>j
3.书写在对应的事件属性里面
<a href="#" onclick="alert('hello world')"></a>
总结:其中最推荐使用的是第二种方式,其次是第一种也经常会被用到,第三种则不常使用
变量的定义:所谓变量,就是特定时间用于保存特定值的一个名字而已,并且初始化后可以再次改变的量
变量的声明定义:使用 var 操作符(var是关键字),后面跟一个变量名(变量名是标识符),声明多个变量的时候,可以在一行或者多行操作,只要把每个变量用逗号分隔开即可,但最好分行写,可读性佳。
变量的命名规则:①只能是对应的字母或者数字或者下滑线,美元符号$等字符(不能以数字开头)②一般采用驼峰命名法(helloWorld 采用单词拼接第一个单词首字母小写 其他单词首字母大写)③不能使用关键词(占用之前的关键词的引用空间)④普通变量首字母小写 常量全大写(const)
注释的作用:解释代码,提高代码的可读性
注释快捷键:单行注释(ctrl+/)多行注释(alt+shift+A)
数字类型:Number
字符串类型:String
布尔类型:Boolean
未定义:undefined
空类型:none(其中空类型是一个空对象,它的对象类型是引用数据类型object)
console.log(typeof number1);
①to string()方法
var str1 = number1.toString()
②string()方法(不常用)
①Number()方法
②使用parseInt方法(转整型)
③使用parstFloat方法 (转小数)
总结:其中方法一和方法二三不同的一点在于,方法二三是从前往后转数据,知道转到不能转为止,而方法一则是一次性转换,所以当string类型的值为“123blue”时,方法一的结果会是NAN,而方法二三则是123,对于方法二三来说,如果第一位就无法转换也会出现NAN,如:blue124。
var str2 = "1a123.12a" console.log(Number(str2)); 返回NAN console.log(parseInt(str2)); 返回123 console.log(parseFloat(str2));返回123
①Boolean()方法(非空为ture 空为false)注意:空格不算为空
var str = "abc" //转为boolean类型 非空就是true 空字符串表示false var b = Boolean(str) //true var b1 = Boolean('') //false
①Boolean()方法(非0则为true NaN和0就是false)
var number1 = 10 //number转布尔 非0和非NaN则为true NaN和0就是false console.log(Boolean(number1))//true console.log(Boolean(0))//false console.log(Boolean(NaN))//false
①number()方法(未定义类型返回NAN 空类型返回0)
var un console.log(Number(un)) //NaN console.log(Number(null)) //0
①Boolean()方法(都返回false)
var un console.log(Boolean(un)) //false console.log(Boolean(null)) //false
①Boolean()方法(0和NAN返回false 其他返回ture)
var number1 = 10 //number转布尔 非0和非NaN则为true NaN和0就是false console.log(Boolean(number1))//true console.log(Boolean(0))//false console.log(Boolean(NaN))//false