100字范文,内容丰富有趣,生活中的好帮手!
100字范文 > JS基础:变量 函数 对象 数组 循环 选择(判断)

JS基础:变量 函数 对象 数组 循环 选择(判断)

时间:2019-01-18 16:49:45

相关推荐

JS基础:变量 函数 对象 数组 循环 选择(判断)

JS基础:变量、函数、对象、数组、循环、选择(判断)

js的三个组成部分

ECMAScript - ES - 语法规范DOM - 文档对象模型 - APIBOM - 浏览器对象模型 - API

js的创建方式

外链式 - 推荐使用-通过script标签的src属性进行导入行内式 - 不推荐使用-a标签直接写在href属性,其他标签需要添加行为属性,如:onclick内联式 - 不推荐使用-直接通过script标签书写js,建议将script标签写在body标签的结束位置

js常用的几个输出语句

alert()-浏览器提示窗口document.write()-直接书写在浏览器上,用户可见,()内可以书写标签console.log()-将结果输出在控制台

用户输入语句

prompt()-通过提示窗口的方式,弹出一个用户输入框

js中的数据类型

简单数据类型/值 - 栈内存 Number - 数值 NaN(not a number) 不是一个数字,但是它是数据类型 String - 字符串 ‘hello’’ ’“你好”“true”‘’ Boolean 两个值:true;false NullUndefined var aconsole.log(‘a’) 复杂数据类型/引用 - 堆内存 Function - 函数Object - 对象Array - 数组

判断数据类型

typeof 'hello'typeof('hello')

变量

用来存储数据的’容器’关键字 var= 赋值的意思命名规范 - 由数字,字母,下划线,$构成 不能有数字开头严格区分大小写,a 和 A 就是两个变量可以使用驼峰命名法,如:firstName 、 lastName命名时,不要使用关键字和保留字,如:var function…尽可能使用一些有意义的单词,英语不行的话,拼音也可以

运算符

算术 ‘+’(需要特别注意,只要+号任意一边,是字符串类型的数据,这里+的作用就是字符串的拼接,而不是求和)‘-’‘*’‘/’‘%’ 逻辑 && 与 同真则真,一假则假|| 或 同假则假,一真即真! 非 非真即假 非假即真 比较 - 结果是布尔值 ‘>’‘<’‘<=’‘>=’‘==’‘===’‘!=’‘!==’ 赋值 =+= var a += 1 就是 a = a + 1-= var a -= 1 就是 a = a - 1*= var a *= 1 就是 a = a * 1/= var a /= 1 就是 a = a / 1%= var a %= 1 就是 a = a % 1 一元 ++a a++–a a– 这里需要注意的是,运算符的前置和后置,当运算符前置时,如:++a,那么就是a先进行a += 1再进行其他操作,当运算符后置时,如:a++,那么就是先进行其他操作,再执行a += 1– 和 ++ 原理一样

类型转换

转数值 parseInt() 转换数据时是一位一位的查看结果,除非第一位不合法,数值会出现NaN,否则会保留前面数字位置内容,注意:只能解析整数部分 parseFLoat() 解析规则和parseInt一样,但是他可以解析小数部分 number() 如果整体是一个合法类型的数字那么结果就是数字,如果整体不是一个合法类型的数字,那么结果就是NaN 转字符串 String() ()里面写内容toString() 内容.toString() 转布尔 Boolean() ()里面写要转换的内容

五种假(当括号里面的内容是以下5种情况时)输出的结果是false

0“” 空字符串nullundefinedNaN

分支

if(){} 条件满足就执行,不满足就不执行if(){}else{} 条件满足就执行if的{},不满足就执行else的{}if(){}else if(){}…else if(){} 满足哪一个if就执行哪一个if的{},前面有满足条件的就不考虑后面的if(){}else if(){}…else if(){}else{} 所有条件都不满足时,就会执行else的{}

switch (已知条件) {根据已知条件找到一个完全匹配的选项,执行对应的代码,需要注意的switch 语句的判断条件比较单一case 选项1:...break总结:1.找到和已知条件完全匹配的选项就会执行case 选项2:2.执行完毕代码需要写break,不然会向下穿透...3.可以写default:,会在所有选项都不匹配的时候执行break4.当发生穿透效果时,会从第一个满足条件的选项开始向下穿透遇到break会停止default:....}

三目运算 a > 10 ? ‘hello’ : ‘byebye’ 条件为真,执行 ’hello‘ 否则执行’byebye‘

循环

for(var i = 0;i < 10;i++){ console.log(123)}while(){}do{}while()

总结,循环语句都需要初始变量,结束条件,步长。需要注意的是, 一定要书写改变初始值的代码(步长),不然会出现死循环在循环内,初始值,结束条件,步长(改变初始值)都能控制循环的次数for循环的初始值,结束条件,步长都是写再一个()内的,中间记得用;隔开最后需要注意一点,while和do while的区别当初始变量不满足条件时,do while循环会执行一次,而while循环一次都不会执行

函数

数据类型 - 复杂/地址/引用数据类型关键字 function相同代码块的封装,实现某一功能(就是一个可以装代码块的盒子)两种创建方式

声明式:function fn() {}

赋值式:var fn = function () {}

参数 形参 一个特殊的变量只能在函数内部使用由函数调用时实参的值决定的 实参 函数调用时给形参赋值的内容,注意可以是常量也可以是变量 arguments对象 arguments.length的值,表示实参的个数。形参的个数由 函数名.length的值表示 return 返回值 (根据实际需求,设定返回值)终止代码运行

预解析

代码真正执行之前的一步操作

找到var的变量以及声明式函数,把他们提到最顶部

然后开始执行代码

函数内部同样遵循预解析的原理

变量和函数命名冲突,预解析阶段以函数为主

作用域的范围

局部作用域 只有函数能够形成局部作用域 全局作用域 一个页面就是一个全局作用域

作用域的使用

1.定义:声明在什么位置的变量就是哪一个作用域的变量

2.访问:自己有用自己的,自己没有用父级的,以此类推,到全局都没有的话就会报错,(not undefined)

3.赋值:自己给自己的赋值,自己没有给父级赋值,以此类推,到全局都没有,定义为全局再赋值

对象

数据类型 - 地址/复杂/引用类型创建方式 字面量

var obj = {

name: ‘xiaomi’, name: 键(key) ‘xiaomi’:值(value)

sex: 'male

}构造函数

var obx = new Object()

obx.play = function () { 增

}

obx.name = ‘xiaoming’

obx[‘play’] = ‘wan’ 改

delete obx.play 删

obx.name 查 键值对 对象就是用来放置键值对的,每个键值对之间用逗号隔开 属性和方法构成了对象 放法就是函数,其他的就是属性 操作(增删改查)遍历 ( for in )

for (var k in obj) {

console.log(k + ‘===’ + obj[k])

}

数组

数据类型 - 地址/复杂/引用类型创建方法 字面量

var arr = [1, 2, 3]

2.构造函数

var sz = new Array() 下标(索引) 从左到右,从0开始依次+1 长度 arr.length 获取长度arr…length = 数字 操作长度 数据 arr[索引] 获取数据arr[索引] = 值 设置数据 数组的遍历

for (var i = 0; i < arr.length; i++) {console.log(arr[i])}

获取数组的最后一项

arr[arr.length - 1]

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。