javascript基础
时间:2019-09-22
本文章向大家介绍javascript基础,主要包括javascript基础使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
javascript基础
语言基础
hello js
document.write("hello js")
向文档中输入文本,也就是网页中,接着HTML文件向下显示
标签
- script标签之间
- script标签内src="js文件路径"
注释
- // 单行注释
- /* 多行注释*/
变量
- var x = 10;
- x = 10;
调试
- alert()
- 浏览器 f12
- console.log()
基本数据类型
- undefined 声明了但没有赋值
- Boolean true false
- Number
- 十进制
- 八进制 012
- 十六进制 0xA
- 浮点数
- 科学计数法
- 字符串 js中没有字符的概念,只有字符串,单引号,双引号都行
- 动态类型 一个变量的类型可以随意改变
- typeof x 判断变量类型
- null 空对象或者对象不存在
类型转换
- 伪对象 js的基本类型也是伪对象,他们都有属性和方法
- 转换为字符串 Number Boolean String都有一个toString方法
- 数字转换为字符串
- 默认模式 转换为十进制
- 基模式 a.toString(2)转换为二进制
- 转换为数字
- parseInt parseFloat
- parseInt("10abs")-->10
- paeseInt("asd")-->NaN
- 转换为Boolean
- 字符串非空为true
- 数字非0为true
- 对象非null为true
- Number()和parseInt()的区别
- 包含非数字的时候Number会返回NaN,parseInt以非数字开头才会返回NaN
- String()与toString()的区别
- String(null)返回"null",null.toString()会报错
函数
function f(x,y){
return x + y;
}
作用域
- 没有块作用域
数字运算符
- +号
- 当两边都是数字,表示为算数运算符
- 当任意一边是字符串,表现为字符串连接符
逻辑运算符
- == 进行值判断 1=="1" ->true
- === 不仅进行值判断还进行类型判断 1 === "1" ->false
错误处理
- try catch
对象
Number
- 通过 new Number() 创建数字对象,与基本数字不同,对象类型的数字拥有更多属性和方法
var x = new Number;typeof x --> object
var x = 123;typeof x --> number
- 最值
Number.MIN_VALUE
Number.MAX_VALUE
- 表示不是数字
var x = new Number(123) -> x = NaN;x == Number.NaN -> false;isNaN(x)-> true
- 返回一个数字的小数表达
var a = new Number(123);a.toFixed(2)->123.00
- 返回一个数字的科学计数表达法
a.toExponential()
- valueOf 返回一个基本类型的数字
String
- string与object类型
- length
- charAt()
- concat()拼接
- indexOf()返回子字符串第一次出现的位置
- lastIndexOf()返回子字符串最后一次出现的位置
- localeCompare()比较两段字符串是否相同,0表示相同,1表示不同
- substring(i,j) [i,j)
- split("分隔符",返回数组的长度)
- replace(search,replacement)
- 默认情况下只替换第一个字符串
- 全部替换
var regS = new RefExp("a","g");x.replace(regS,"o") || x.replace(/a/g,"o")
- 所有返回字符串类型的方法返回的都是基本类型string
数组
- 创建
var a = new Array()
创建空数组var a = new Array(5)
创建长度为5的数组,每个元素都是undefinedvar a = new Array(1,2,3,4)
创建1,2,3,4
- length获取长度
- 遍历一个数组
- 普通for
- 增强for
- concat()连接两个数组
- join("分隔符")得到一个数组元素连接之后的字符串
- push() pop()在最后的位置插入和删除数据
- unshift() shift()在最开始的位置插入删除
- sort()排序
- 自定义排序
function comparator(v1,v2){return v2-v1;}大的放前,小的放后,再调用sort
- reverse() 反转
- slice(i,j) 获取子数组[i,j)
- splice()
- x.splice(3,2)从位置3开始,删除2个元素
- x.splice(3,0,1,5) 从位置3开始,删除0个元素,但是也插入1和5
Date
- new Date() 创建一个表示当前日期的对象
- getFullYear()返回年份,getMonth()返回月份(0开始)getDate()返回日期
- getHours() getMinutes() getSeconds() getMilliseconds()
Math
- Math.E Math.PI
- Math.abs() min() max() pow() round()小数四舍五入
- Math.random()*100 0-100之间随机数
自定义对象
BOM 浏览器对象模型
window
- 获取文档显示区域的高度和宽度
- 内部 window.innerWidth,window.innerHeight
- 外部 window.outerWidth,window.outerHeight
history
- 返回上一次访问
history.back()
- 返回上n次访问
history.go(-n)
原文地址:https://www.cnblogs.com/huyuefei/p/11568761.html
- 人工智能创造新型态工作 制造业受冲击
- ASP.NET Core File Providers
- JS魔法堂之实战:纯前端的图片预览
- 域名publica.com近50万交易 买家身份浮出水面
- Vim杂记:Sublime的配色方案
- Vim杂记:markdown插件
- 【手把手教你全文检索】Apache Lucene初探
- 微信小程序的“小游戏” 是什么?
- CentOS6.5菜鸟之旅:中文编辑器忍痛放弃Sublime
- JS魔法堂:Data URI Scheme介绍
- Sedo榜:域名happymath.com以3.5万美金交易居榜首
- ASP.NET Core WebListener 服务器
- 雪花代码
- 【插件开发】—— 3 透视图开发
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- 手把手教你打造高效的 Kubernetes 命令行终端
- docker save load export import的区别
- 使用ABAC控制数据访问
- linux 压力测试工具之ab
- 什么是Python Wheels?为什么要关心它?
- Nginx fastcgi_cache权威指南
- 玩转dockerfile
- redis实战第六篇 手动创建redis cluster
- docker容器入门最佳教程
- redis实战第五篇 jedis 连接 redis sentinel详解
- redis实战第四篇 手动容灾故障转移记录
- 10条很棒的Python一行代码
- 如何在一个Docker中同时运行多个程序进程?
- 如何在CentOS / RHEL 7上启用IPv6
- Golang中的RegExp正则表达式用法指南