JS

01-JS-01

2017-08-20  本文已影响0人  京河_简

书写位置

嵌入式

在html里放哪都可以

<script></script>

外链式

在HTML里放哪都可以
<script src="js路径"></script>

外链式属性

共同点:都是异步加载

defer    先加载完html再执行js

async   当js加载完立即执行


javascript和ECMAScript的关系

ECMAScript是JavaScript的标准


注释

单行注释  //

多行注释  /*      */    (同css一样)

html注释 <!--><-->


输入输出语句

alert("123");在页面弹出一个警告框,括号里的内容显示在框内

console.log("222");在控制台打印出括号里的内容

prompt("请输入姓名");在页面弹出一个小框,括号里的内容显示在小框中,小框里还有个输入框

document.write("你好世界");在页面打印出括号里的内容

confirm("你确定吗?");在页面弹出一个确认框


定义一个变量和赋值

var a;定义一个变量a

定义变量的同时赋值


变量命名

数字.字母.下划线.$,不能以数字开头,不能使用关键字.保留字


变量提升

js解析器在解析代码时会进行预解析,

当看到var时,会默认将这些变量声明出来,

声明变量的代码写在赋值代码的前面,叫做变量提升

注意:不用var的变量是不会进行提升的


七种原始数据类型

String Number Null Array Boolean Undefined Object

基本数据类型

string

number

boolean

undefined

复杂数据类型

null

function

array

symbol


typeof-判断数据类型

console.log( typeof(123) )    有括号

console.log(typeof 123)      无括号 带空格


隐式类型转换

底层还是强制类型转换

预期为某个类型的值,在进行转换时就调用某个类型的函数

"123"+"true"  返回"123true"  +起拼接作用

"123"-true    返回122


遇到预期为数值的地方,调用Number()函数进行转换

注     意:      +在进行运算的时候会将运算子进行连接

123+"478"  返回123478

15+true      返回16

33-false      返回32

null-1          返回0

undefined-8  返回NaN

自动转为Bollean值

在if语句中,预期值为布尔值,将调用Boolear函数进行转换

undefined  null  0  1  NaN  ""空字符串

自动转为数值


运算符

一元运算符

++,--   变量参与运算时,运算符在变量前,先进行递增.递减再进行赋值运算,运算符在变量后,先进行运算再进行递增.递减

delete    用于删除对象的属性

!    逻辑非         !true  返回false

!!     负负得正  !!true  返回true

算数运算符

+

-

*

/

%取余

关系运算符(比较运算符)

>

<

=

>=

<=

!=不等式运算符

!==全不等运算符

==等式运算符

===全等式运算符


强制类型转换

Boolean(value)把给定的值转换为布尔值

①字符串转换为boolean值,除空字符串为false,其余都为true

②数字转换为boolean值,除0为false,其余都为true

③undefined转boolean值为false

④null转boolean值为false

Boolean("")//false(空字符串)

Boolean({})//true (对象)

Boolean(Symbol("foo"))  //true

Number(value)把给定的值转换为数字

①Number(false)  //0

②Number(true)  //1

③Number("")      //0      空字符串

④Number("shhsuifdh")  //NaN

⑤Number(undefined) //NaN

⑥Number(null)  //0

⑦Number( [] )  //0 空数组

⑧Number( [5] ) //5

⑨Number( [1,2] )  //NaN

⑩Number("456suifdh")  //NaN

⑩+①  Number( {} )  //NaN


Number强制类型转换和parseInt的区别

1: Number在转换数字时,里面如果包含字母,将返回NaN

2:parseInt在转换数字时,只要字母不在开头,就直接返回字母前面的数字

String(value)把给定的值转换为字符串

括号里是什么内容就输出什么内容


其他显式的转换方式

toString    转换为字符串

①true.toString  //true

②12.toString  //报错  将点号视为小数点

③12.5.toString  //12.5

④undefined.toString  //报错

⑤null.toString  //报错

⑥symbol.toString()  //"function Symbol() { [native code] }"

转换为数值

parseInt()

将数值转换为整数

parseInt("45.1")  返回45

parseInt("457add")返回457

parseInt("ac778")返回NaN

parseFloat

将数值转换为浮点数

parseFloat(12.45.55)  返回12.45


上一篇下一篇

猜你喜欢

热点阅读