一、简述

JavaScript是用来实现浏览器和用户交互的,与html和css不同,它是门弱类型编程语言。

二、引入方式

1、内部标签

<script>
    代码块
</script>

2、外部引入

<script src="js文件路径"></script>

三、基础语法

1、变量类型

定义变量

所有的变量默认用var定义,var是任意的变量类型,如:

var aaa=1;
var bbb='abc';

在ES6中,建议局部变量用let定义。

let i = 1;
基本类型
  • number(数值):js不区分实型和浮点型
            NaN表示不是数值
            Infinity表示js接收不了的一个极大的数
  • 字符串:'aaa'   "aaa"
  • 布尔值:true   false
  • 逻辑运算符:&&(与)   ||(或)   !(非)
  • 比较运算符:==(值一样) ===(类型和值都一样)
            NaN与所有数值都不===,包括自己。
            浮点数存在精度问题,尽量避免比较,计算机会把无限小数约作和它差别很小的有限小数。
  • 空指针:null空(定义了,但没有值) undefined未定义
  • 数组:同样用var定义,可以不是同一类型的元素,尽量使用[ ]。
  • 对象:用{ },类似于:
var Person{
	键1:值1,
	键2:值2,
	键3:值3
}

取对象的值,用对象名.键,得到

2、流程控制

  • if 和 else if
  • while 和 do-while
  • for
  • switch

3、特殊函数

/*弹窗*/
alert("message text");//参数为弹窗显示文本

4、调试

console.log(变量);

可以在控制台调试,用浏览器打开网页->检查->console

javascript最基础知识 javascript零基础入门_字符串


像我这里,网页的js代码里有这么一句

var num = 1;

四、严格检查模式

//严格检查模式
'use strict';

//代码不规范,会报错
//i = 1;

//规范定义变量
let i = 1;

必须写在第一行!

五、字符串详解

  1. 正常的字符串用' '" "包裹
  2. 一般符号用\转义
  3. 一般的转义字符通用
  4. 可以输出Unicode字符和ASCII字符
  5. Esc键下面的那个小点可以跨行包裹字符串
  6. 字符串不可变

1、模板字符串

let name = 'Tom';
let msg = `Hello,${name}!`;
console.log(msg);
//用` `包裹的字符串可以用el表达式拼接,注意不是''单引号,是``esc下面那个键

2、字符串属性

  1. 字符串长度:str.length
  2. 下标取值:str[0]
  3. 全变大写:str.toUpperCase()
  4. 全变小写:str.toLowerCase()
  5. 找到某个字符串(a)第一次出现的下标:str.indexOf(‘a’)
  6. 截取一段( [2,5) -> 2、3、4 )字符串:str.substring(2,5)     ,第二个参数不填就是截取到最后一个字符

六、数组详解

  1. 可以包含任意类型
var arr = [1,2,3,'a',"b",true];
  1. 长度(可被赋值修改,赋值过小元素就会丢失)
arr.length;
  1. 通过下标取值和赋值
  2. 数组切片
//等价于字符串substring()的用法
arr.slice(3);//第4个到最后
arr.slice(3,5);//第4、5个
  1. 压、弹(尾部)
//类似于c压栈和弹出的操作
arr.push('a','b');//返回数组长度
arr.pop();//删除最后一个元素
  1. 压、弹(头部)
arr.unshift('a','b');
arr.shift();
  1. 排序
arr.sort();
  1. 逆序
arr.reverse();
  1. 拼接
//arr1拼在arr后面
arr.conact(arr1);
  1. 连接
//用 - 把所有元素连接起来
//将连接成的字符串打印出来
arr.join('-');
  1. 有多维数组的概念

七、对象详解

  1. 赋值
str.a = 1;
  1. 调用一个不存在的属性,不会报错,会认为你还没定义,输出undefined
  2. 动态增删属性
//删除a属性
delete str.a;
//增加b属性
str.b = 'b';
  1. 判断属性是否在对象中
属性 in 对象;
//返回true或者false
  1. 判断某个字段而不是对象定义的时候系统自带的方法,属不属于对象
str.hasOwnProperty(field);