javascript学习

目录

javascript教程... 2

数字... 3

数组... 4

javascript教程
使用 window.alert() 写入警告框
使用 document.write() 写入 HTML 输出
使用 innerHTML 写入 HTML 元素
使用 console.log() 写入浏览器控制台
document.getElementById().innerHTML

let声明的变量,在块作用域
可以使用 let 关键词声明拥有块作用域的变量。在块 {} 内声明的变量无法从块外访问
通过 const 定义的变量与 let 变量类似,但不能重新赋值 声明变量时就赋值
== 值相等7'==7 true
=== 类型和值都相等'7'===7 false
javascript 数据类型对象和python字典相似
typeof 0 返回数据类型
没有值的变量,其值是 undefined 任何变量均可通过设置值为 undefined 进行清空。其类型也将是 undefined
访问没有 () 的函数将返回函数定义
在 JavaScript 函数中声明的变量,会成为函数的局部变量
this 引用该函数的“拥有者”
访问对象属性两种方法:objectName.propertyname; objextName['pwopertyName']
如果通过关键词 "new" 来声明 JavaScript 变量,则该变量会被创建为对象:
var x = new String();        // 把 x 声明为 String 对象

字符串:
内建属性 length 可返回字符串的长度:
 \转义字符
indexOf() 方法返回字符串中指定文本首次出现的索引(位置)
lastIndexOf() 方法接受第二个参数作为搜索的起始位置,如果第二个参数是50相当于到第50位截止
search() 搜索字符串中的字符串

有三种提取部分字符串的方法:
slice(start, end) 起始索引终止索引
substring(start, end) 无法接受负的索引
substr(start, length)

替换字符串方法replace()
默认只替换首个匹配 替换所有匹配,请使用正则表达式的 g 标志
如需执行大小写不敏感的替换,请使用正则表达式 /i
toUpperCase() 把字符串转换为大写
toLowerCase() 把字符串转换为小写
concat() 连接两个或多个字符串
trim() 方法删除字符串两端的空白符
提取字符串字符
charAt(position) 返回下标位置的字符串
charCodeAt(position) 返回下标位置字符串的unicode编码

把字符串转换为数组 可以通过 split() 将字符串转换为数组 使用|和空格分隔a[0]返回,分隔的字符串



用于搜索字符串的 JavaScript 方法:

String.indexOf() 方法返回指定文本在字符串中第一次出现(的位置)的索引 第二个参数是从哪个位置开始
String.lastIndexOf()
String.startsWith() 如果以该字符串开头返回true
String.endsWith() 以指定值结尾
match() 方法根据正则表达式在字符串中搜索匹配项,并将匹配项作为 Array 对象返回
如果字符串包含指定值,includes() 方法返回 true


反斜杠``模板字面量提供了一种将变量和表达式插入字符串的简单方法 ${...}

数字

NaN 属于 JavaScript 保留词,指示某个数不是合法数。

尝试用一个非数字字符串进行除法会得到 NaNNot a Number

NaN 是数,typeof NaN 返回 number

Infinity (或 -Infinity)是 JavaScript 在计算数时超出最大可能数范围时返回的值

toString(“16”) 方法把数输出为十六进制、八进制或二进制

toString() 以字符串返回数值 x.toString()

toExponential() 返回字符串值,它包含已被四舍五入并使用指数计数法的数字

toFixed() 返回字符串值,它包含了指定位数小数的数字四舍五入

toPrecision() 返回字符串值,它包含了指定长度的数字

valueOf() 以数值返回数值

Number() 可用于把 JavaScript 变量转换为数值 Number() 还可以把日期转换为数字 时间簇

parseInt() 解析一段字符串并返回数值。允许空格。只返回首个数字(除了空格以数字开头否则返回NaN)

parseFloat() 解析一段字符串并返回数值。允许空格。只返回首个数字 (以小数点分割返回整个小数)

数组

var cars = new Array("Saab", "Volvo", "BMW");

访问方法和python类似通过引用索引号(下标号)来引用某个数组元素

length 属性返回元素的数量

sort() 方法对数组进行排序,默认地,sort() 函数按照字符串顺序对值进行排序

遍历数组for循环

for(i=0,i<11,i++)

也可以使用 Array.foreach() 函数:

fruits.forEach(myFunction);

function myFunction(kk) {

向数组添加新元素的最佳方法是使用 push() 方法:

添加最高索引的元素可在数组中创建未定义的“洞” (显示的是undefined)

Array.isArray():判断是否是数组

JavaScript 方法 toString() 把数组转换为数组值(逗号分隔)的字符串

join()方法和python中类似

pop() 方法从数组中删除最后一个元素

push() 方法(在数组结尾处)向数组添加一个新的元素:push() 方法返回新数组的长度

shift() 方法会删除首个数组元素

unshift() 方法(在开头)向数组添加新元素

delete 运算符来删除

splice() 方法可用于向数组添加新项 splice(2,2,’dd’,’jj’) 在位置为2的地方添加ddjj,删除两个

concat() 方法通过合并(连接)现有数组来创建一个新数组

slice() 方法用数组的某个片段切出新数组。

reverse() 方法反转数组中的元素

随机顺序排序

points.sort(function(a, b){return 0.1 - Math.random()});

查找最高(或最低)的数组值

Math.max.apply 最高的数组值

Math.max.apply 最低的数组值

map() 方法通过对每个数组元素执行函数来创建新数组

filter() 方法创建一个包含通过测试的数组元素的新数组(过滤)

reduce() 方法在每个数组元素上运行函数,从左到右工作,以生成(减少它)单个值

reduceRight() 方法在数组中从右到左工作

every() 方法检查所有数组值是否通过测试返回布尔值

some() 方法检查某些数组值是否通过了测试

indexOf() 方法在数组中搜索元素值并返回其位置

Array.lastIndexOf() 从结尾开始搜索

find()返回通过测试函数的第一个数组元素的值

findIndex() 方法返回通过测试函数的第一个数组元素的索引。

 const 声明的数组不能重新赋值

 const 声明的数组具有块作用域

日期

new Date() 用当前日期和时间创建新的日期对象

toUTCString() 方法将日期转换为 UTC 字符串(一种日期显示标准)

获取时间getDate等

设置日期setDate等

数学

Math.round()四舍五入

Math.pow(x,y) 返回x的y次幂

Math.sqrt() 返回平方根

Math.abs()返回绝对值

Math.ceil()向上返回最接近的整数Math.ceil(6.4)返回7

Math.floor()向下返回Math.floor(6.4)返回6

Math.sin()返回角的正弦

Math.cos()返回角的余弦

Math.max(),Math.min()查找参数列表中最大最小值

Math.random()返回0和1之间的随机小数

Math.E          // 返回欧拉指数(Euler's number)

Math.PI         // 返回圆周率(PI)

Math.SQRT2      // 返回 2 的平方根

Math.SQRT1_2    // 返回 1/2 的平方根

Math.LN2        // 返回 2 的自然对数

Math.LN10       // 返回 10 的自然对数

Math.LOG2E      // 返回以 2 为底的 e 的对数(约等于 1.414)

Math.LOG10E     // 返回以 10 为底的 e 的对数(约等于 0.434)

逻辑

  • 计算一次 switch 表达式
  • 把表达式的值与每个 case 的值进行对比
  • 如果存在匹配,则执行关联代码
  • Switch case 使用严格比较(===

swith(){

case 0:

default:

}

default 关键词规定不存在 case 匹配时所运行的代码

循环

  • for - 多次遍历代码块
  • for/in - 遍历对象属性
  • while - 当指定条件为 true 时循环一段代码块
  • do/while - 当指定条件为 true 时循环一段代码块

for in循环:

  • for in 循环遍历 person 对象
  • 每次迭代返回一个 (x)
  • 键用于访问键的
  • 键的值为 person[x]

for of 语句循环遍历可迭代对象的值

while 循环会一直循环代码块,只要指定的条件为 true

do/while 循环是 while 循环的变体。在检查条件是否为真之前,这种循环会执行一次代码块,然后只要条件为真就会重复循环

如需标记 JavaScript 语句,请将标签名和冒号置于语句之前 aa:{}

constructor 属性返回所有 JavaScript 变量的构造函数

异常

try 语句使您能够测试代码块中的错误。

catch 语句允许您处理错误。

throw 语句允许您创建自定义错误。

finally 使您能够执行代码,在 try 和 catch 之后,无论结果如何。

声明严格模式

通过在脚本或函数的开头添加 "use strict"; 来声明严格模式

严格模式中不允许的事项

在不声明变量的情况下使用变量,是不允许的:

删除变量(或对象)是不允许的

删除函数是不允许的

重复参数名是不允许的

八进制数值文本是不允许的:

转义字符是不允许的

写入只读属性是不允许的

写入只能获取的属性是不允许的

删除不可删除的属性是不允许的

字符串 "eval" 不可用作变量

字符串 "arguments" 不可用作变量

with 语句是不允许的

this

call()  apply() 方法是预定义的 JavaScript 方法

JSON 语法规则

  • 数据是名称/值对
  • 数据由逗号分隔
  • 花括号保存对象
  • 方括号保存数组

如果您的浏览器支持调试,那么您可以使用 console.log() 在调试窗口中显示 JavaScript 的值

debugger 关键词会停止 JavaScript 的执行,并调用(如果有)调试函数。

这与在调试器中设置断点的功能是一样的

JavaScript 对象都可以使用 JavaScript 函数 JSON.stringify() 进行字符串化(转换为字符串)

Getter Setter 允许您定义对象访问器(被计算的属性

JavaScript prototype 属性允许您为对象构造器添加新属性和新方法

set字典

call() 方法是预定义的 JavaScript 方法。它可以用来调用所有者对象作为参数的方法。通过 call(),您能够使用属于另一个对象的方法。

call() 方法分别接受参数。

apply() 方法接受数组形式的参数

JavaScript 变量属于本地或全局作用域。

全局变量能够通过闭包实现局部(私有)

内部函数 plus() 可以访问父函数中的 counter 计数器变量

static 类方法是在类本身上定义的。

您不能在对象上调用 static 方法,只能在对象类上调用

static 方法中使用 myCar 对象,可以将其作为参数发送

回调:

setTimeout(myFunction, 3000) 超过3000毫秒调用myFunction函数

在使用 JavaScript 函数 setInterval() 时,可以指定每个间隔执行的回调函数

 clearInterval() 来停止执行

disabled

js添加disabled属性时,document.getElementById("btn").disabled=false,表示不添加disabled属性;

- document.getElementById("btn").disabled=true 为标签添加disabled属性;

- 当标签为<input type="button" id="btn" name="btn" value="按钮" disabled="true/false"/>时,均为不可点击

当布尔属性 disabled 存在时,元素将不可变、不能聚焦或与表单一同提交。用户将不能在表单控件本身或其子控件进行编辑或聚焦操作。

事件:

onsubmit 属性在表单提交时触发

createElement(“form”创建表单)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值