JavaScript基础语法及规则(一)

JavaScript基础语法及规则(一)

  • 注释
  • 变量
  • 基本数据类型
  • 运算符
  • 正则对象
    • RegExp对象的创建方式:
    • test方法
    • 正则对象使用注意事项
  • js数组
    • js数组的创建方式
    • js数组的常用属性/方法
  • eval全局函数
  • URL解码和编码
  • 字符串转数字
  • 函数
    • 函数格式
    • 重名函数
  • 自定义对象
    • function形式创建自定义对象
      • 属性定义方式
      • 属性赋值
    • 直接量自定义对象
      • 第一种创建方式
      • 第二种创建方式

注释

  • 单行注释:// 注释内容
  • 多行注释:/* 注释内容 */

注意:JavaScript没有文档注释

变量

JavaScript中用var关键字(variable的缩写)来声明变量。

  • 格式:var 变量名= 数据值
    变量可以存放不同类型的值,如下在定义变量时赋值为数字数据,还可以将变量的值改为字符串类型的数。
var test = 20; 
test = "张三";

var的作用域:全局变量,且变量可以重复定义。

{ 
	var age = 20;
}
alert(age); // 在代码块中定义的age 变量,在代码块外边还可以使用

{ 
	var age = 20; 
	var age = 30;//JavaScript 会用 30 将之前 age 变量的 20 替换掉
}
alert(age); //打印的结果是 30

针对以上问题,衍生出了let关键字,与var用法类似,但是只能够在let所在的代码块中使用,并且不可重复定义。

js的变量名命名也有如下规则,与Java大致相同:

  • 组成字符可以是任何字母、数字、下划线(_)或者美元符号($)
  • 数字不能开头
  • 建议使用驼峰命名

基本数据类型

  • string:字符、字符串,单双引皆可
var str1="nihao";
var str2='hello';
  • number:数字(整数、小数、NaN(not a number))
var num1=10;
var num2=10.55;
var num3=-12.5;
  • boolean:布尔类型(true、false)
var flag1=true;
var flag2=false;
  • null:空
var obj=null;
  • undefined:未定义类型
var a;
var b=undefined;

使用 typeof 运算符可以获取数据类 alert(typeof age); 以弹框的形式将变量的数据类型输出




    
    Title
    





运算符

JavaScript 提供了如下的运算符。大部分和 Java语言都是一样的,不同的是 JS 关系运算符中的 == 和 = = = ,一会我们只演示这两个的区别,其它运算符将不做演示。

  • 一元运算符:++,–
  • 算术运算符:+,-,*,/,%
  • 赋值运算符:=,+=,-=…
  • 关系运算符:>,<,>=,<=,!=,= =,= = =…
  • 逻辑运算符:&&,||,!
  • 三元运算符:条件表达式 ? true_value : false_value

比较运算符:有= =和 = = =两种比较运算符。

  • ==:
    1.判断类型是否一样,如果不一样,则进行类型转换
    2 . 再去比较其值是否相同,相同则返回true,否则false。
  • = = =:
    1.判断类型是否一样,如果不一样,直接返回false
    2 . 再去比较其值是否相同。相同则返回true,否则false。

代码展示:




    
    Title
    





效果如下:
JavaScript基础语法及规则(一)_第1张图片

JavaScript基础语法及规则(一)_第2张图片
JavaScript基础语法及规则(一)_第3张图片
JavaScript基础语法及规则(一)_第4张图片

正则对象

RegExp对象的创建方式:

  • var reg=new RegExp("表达式“) 开发中基本不用。
  • var reg=/^ 表达式 $/ 直接量(开发中常用)
    直接量存在边界,^表示开始, $表示结束。

test方法

  • var 变量名=正则对象.test(string):用来校验字符串是否匹配正则,全部字符都匹配则返回true,有字符不匹配则返回false

正则对象使用注意事项

  • /^表达式$/: 只要有无法成立正则的字符存在,即为false,全部符合为true。
    (检查严格,眼睛不揉沙子)适用于表单校验
  • /表达式/ :只要有成立正则的字符存在,即为true。全部不符合为false
    (检查不严格,懒人思想)适用于字符串查找、替换

js数组

js数组的创建方式

  • var arr=[1,2,3,“a”,true] :常用的创建方式,长度为5

  • var arr=new Array(): 创建了一个数组,默认长度为0

  • var arr=new Array(“a”,“b”,true):长度为3

  • var arr=new Array(4):开辟了一个长度为4的数组,但是每个元素本质都为undefined

js数组的常用属性/方法

  • length :设置或返回数组中元素数目
    代码展示:



    
    Title
    




效果如下:
JavaScript基础语法及规则(一)_第5张图片

  • join():把数组的所有元素放入一个字符串,元素通过指定的分隔符进行分离
    代码展示:



    
    Title
    





效果如下:
JavaScript基础语法及规则(一)_第6张图片

  • pop() :删除并且返回数组的最后一个元素
    代码展示:



    
    Title
    





效果如下:
JavaScript基础语法及规则(一)_第7张图片
JavaScript基础语法及规则(一)_第8张图片

  • push():像数组的末尾添加一个元素,并返回新的长度
    代码展示:



    
    Title
    




效果如下:
JavaScript基础语法及规则(一)_第9张图片

JavaScript基础语法及规则(一)_第10张图片

  • reverse() :对元素顺序进行颠倒
    代码展示:



    
    Title
    





效果如下:
JavaScript基础语法及规则(一)_第11张图片

eval全局函数

  • eval(): 计算JavaScript字符串,并把它作为脚本代码来执行,用于增强程序的扩展性,只可以传递原始数据类型String,对传递String对象没作用。
    代码展示:



    
    Title
    




效果如下:
JavaScript基础语法及规则(一)_第12张图片

URL解码和编码

  • encodeURI(String):把字符串编码为URL
  • decodeURI(String):解码某个编码的URL
    代码如下:



    
    Title
  





效果如下:
编码:
JavaScript基础语法及规则(一)_第13张图片
解码:
JavaScript基础语法及规则(一)_第14张图片

字符串转数字

  • parseInt(string):string按照字面值转换成整数部分,小数点后面不关注
  • parseFloat(string0:string按照字面值转换成一个小数类型

注:
如果字符串的某个字符从字面值上无法转为数字,那么从该字符开始停止转换,仅返回前面正确的转换值。(例如:11.5a55,parselnt结果11,parseFloat结果11.5).
如果字符串的第一个字符就无法从字面值上转为数字,那么停止转换,返回 NaN NaN(NotANumber,一个数字类型的标识,表示不是一个正确的数字。

代码展示:




    
    Title
    





效果如下:
JavaScript基础语法及规则(一)_第15张图片

函数

函数格式

function 函数名(参数列表){
函数体
}
代码展示:




    
    Title
    





效果如下:
JavaScript基础语法及规则(一)_第16张图片

重名函数

按照最近的一个函数来运算,看代码:




    
    Title
    





效果如下:
JavaScript基础语法及规则(一)_第17张图片

函数使用的注意事项:
JavaScript函数调用执行完毕一定有返回值,值及类型根据 return决定,如果未说明return具体值,返回值为undefined;
JavaScript函数若同名,则不存在方法重载,只有方法相互覆盖,最后定义的函数覆盖之前的定义;
因为JavaScript不存在函数重载,所以JavaScript仅根据方法名来调用函数,即使实参与函数的形参不匹配,也不会影响正常调用;
如果形参未赋值,就使用默认值undefined。

自定义对象

function形式创建自定义对象

属性定义方式

方式1. this关键字,在对象声明定义阶段,定义一个属性

  • 格式:this.属性名=”属性值“

方式2. 创建对象后,使用对象.属性方式,动态定义属性

属性赋值

方式1.
代码展示:




    
    Title
    





效果如下:
JavaScript基础语法及规则(一)_第18张图片
JavaScript基础语法及规则(一)_第19张图片

方式2:
代码展示:




    
    Title
    





效果如下:
JavaScript基础语法及规则(一)_第20张图片

直接量自定义对象

  • 格式:var 变量名={属性名:“属性值”,属性名:“属性值”,…};
    示例:var person={name:"小李",age:18};

第一种创建方式

在变量名声明定义阶段,定义一个属性

代码展示:




    
    Title
    




效果如下:
JavaScript基础语法及规则(一)_第21张图片
JavaScript基础语法及规则(一)_第22张图片

第二种创建方式

创建变量后,使用变量名.属性方式,动态定义属性。
代码展示:




    
    Title
    





效果如下:
JavaScript基础语法及规则(一)_第23张图片
JavaScript基础语法及规则(一)_第24张图片

你可能感兴趣的:(前端,javascript,前端,java)