JS基础语法

js简介

运行在客户端的编程语言,实现人机交互效果
作用:

  • 网页特效(监听用户的一些行为让网页作出对应的反馈)
  • 表单验证(针对表单数据的合法性进行判断)
  • 数据交互(湖区后台数据、渲染到前端)
  • 服务端编程
    组成:
    JavaScript分为ECMAScript、WebAPIs(DOM+BOM)
    ECMAScript规定js基础语法核心知识
    WebAPIs(DOM+BOM):
    DOM:操作文档,比如对页面元素进行移动、大小、添加删除等操作
    BOM:操作浏览器,比如页面弹窗、检测窗口宽度
    书写方式
  • 内部JavaScript:直接写在html文件里,用script包裹,写在</body>上面
  • 外部JavaScript:代码写在以.js结尾的文件里,通过script标签,引入到html页面中。也是写在</body>上面
  • 内联JavaScript:写在标签内部,vue会用到
    输入输出语句:
document.write('我是div标签')
document.write('<h1>我是h1标签</h1>')   //也可以写标签,是向body内输出内容
alert('警告')
concole.log('控制台打印')   //控制台输出语法,程序员调试使用,页面里是看不到的

//输入语句
prompt('请输入你的年龄:')

alert、prompt会跳过页面渲染先被执行

变量

用于存储数据的容器。

  • 声明变量:
    语法:let 变量名
  • 变量赋值,初始化
    语法:age = 18
 <script>
    let age = 18
    document.write(age)
</script>
  • 更新变量
    重新赋值即可。
 <script>
    let age = 18
    age = 19       //不允许多次声明同一个变量,不能写let age=19
</script>
  • 声明多个变量
    使用逗号隔开即可。
 <script>
    let age = 18,num = '张三'    //但是不推荐这样写
    document.write(age,num)
</script>
  • 变量的本质
    程序在内存中申请的一块用来存放数据的空间
  • 变量命名规则与规范
    不能使用关键字:let、if、var
    只能用下划线、字母、数字、$组成,且数字不可开头
    严格区分大小写
    起名要有意义
    遵循小驼峰命名法:第一个单词首字母小写,后面每个单词首字母大写,如:userName
  • 数组
    将一组数据存储在单个变量名下,语法 let arr = [数据1, 数据2, 数据3, …, 数据n]
    ,其中的数据索引从0开始,即数据1=arr[0],当数据是中文时,要加单引号
    数组长度:arr.length

常量

const声明,不会改变。常量不允许重新赋值,声明的时候必须赋值(初始化)

数据类型

基本数据类型

  • number数字型

可以是整数、小数、正数、负数。
运算:+、-、*、/(求商)、%(取余),乘法、除法、取余优先级>加法、减法,和数学运算是一样的
NaN:not a number代表一个计算错误,任何对NaN的操作都会得到NaN,即都是错误的,甚至NaN都不等于NaN,因为只要有NaN参与了运算就一定会是错误的

  • string字符串型
    可以使用双引号、单引号、反引号(``)包裹,双引号和单引号中推荐使用单引号。
    转义符:\ ,输出单引号或双引号
    字符串拼接:使用+运算符,实现字符串的拼接,只要有一个是字符串就可以进行拼接

模板字符串:用于拼接字符串和变量
语法:使用反引号

    let age = 18
    document.write(`我今年${age}岁了`)    //外部用反引号包含
  • boolean布尔型
    他只有两个固定的值:true和false,非真即假

  • undefined未定义型
    声明了一个变量但是未赋值。undefined+1的结果是NaN

  • null空类型
    为某变量赋值为null,但是内容为空。null+1的结果是1
    如果一个变量里面确定存放的是对象,但是对象还没准备好,就先赋值一个null

  • 数据类型的检测
    通过typeof关键字检测数据类型:typeof x 或 typeof (x)

引用数据类型

object对象

数据类型的转换

使用表单、prompt获取过来的数据默认是字符串类型的,此时就不能直接简单的进行加法操作,所以要转换成我们需要的数据类型

隐式转换

有些运算符被执行时,系统内部自动将数据类型进行转换,成为隐式转换。
如:+号两边只要有一个是字符串,就会自动把另一个也转换成字符串。还可以将字符串转换成数字型:

    document.write(+`123`)    //此时123就不是字符串类型的了,变成数字型的

显式转换

Number(数据):转换成数字型,NaN也是number类型的数据,代表非数字

<script>
    let age = prompt('请输入年龄:')   //prompt默认输入的是字符型
    let age1 = Number(age)    //强制将string类型转换成数字型
    console.log(typeof age, typeof age1)
</script>

parseInt(数据):只保留整数,12px就会取成12,只取数字部分,但是abc12pv,这样不能取数字,因为不是以数字开头
parseFloat(数据):可以保留小数

算术运算符

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值