Javascript

Javascript

主要用途: 用在浏览器当中, 也可以作为后台开发语言(nodejs)

语法: 类似于 java, 可简称js

1. 基本数据类型

  • Number 数字类型(整数, 小数) 1.0 1 -2
  • String 字符串类型 “字符串1” ‘字符串2’
  • Boolean 布尔类型 true false
  • Null 表示空置
  • Undefined 未定义(声明了var变量, 但没有赋初值)

2. 变量赋值

所有变量类型 都是 var (var 可以存储数字,字符串,布尔 …)
弱类型语言

var i = 10;
var str = "hello, world";

可以利用浏览器提供的 console 对象进行调试输出,例如:

console.log("内容");

3. 基本运算

  • 没有除0异常,除零会出现正负无穷大(Infinity)
  • 如果进行了非法的数字运算,结果是 NaN (Not a Number)
    “aaa” - 9 结果就是 NaN
    包括字符串转换数字失败时,结果也是NaN 例如 parseInt(“aaa”)
  • js中的== 比较的是值(不同类型的会转换后比较)所以
    1 == '1' 结果是 true
    如果既要保证值相等,也要保证类型相等
    1 === '1'
  • 可以条件判断中,使用各种类型的值
    对于数字类型 0 代表 false, 非零 代表 true
    对于字符串 “” 代表 false, 非空串 代表 true
    null , undefined 代表 false
var i = 0;
if(i) {
    console.log("ok");
} else {
    console.log("not ok");
}

4. js中没有块作用域

for(var i = 0; i < 10; i++) {
    console.log(i);
}
console.log(i);

if(true) {
    var x = 10;
}
console.log(x);

如果需要使用到具有块作用域的变量可以使用let
注: 如果要使用这个变量需要将javascript版本升级到6以上

5. 复杂类型

Object 对象类型

定义对象

// {属性名:属性值, 属性名:属性值 ...}
var obj = {"name":"张三", "age": 18};
// 可以简化 {name:"张三", age: 18};
// 动态添加
obj.sex = "男";
// 修改属性
obj.age = 20;
// 删除属性
delete obj.age;

Array 数组类型

定义数组

// [值1, 值2, ... 值n]
var array = [1,2,3,4,5];
// 访问下标为 3  的元素
console.log(array[3]);
// 遍历数组
for(var i = 0; i < array.length; i++) {
    console.log(array[i]);
}
// 修改元素
array[3] = 40;
// 向尾部加入元素
array[5] = 6;
array[9] = 10;
// 向尾部添加元素 .push(元素)
array.push(6);
// 从尾部删除元素 .pop()
array.pop();
// 从中间的某个下标删除元素 splice(下标,个数);
array.splice(1,2); // 代表从下标1开始,删除2个元素
// 拼接数组内的所有元素, 例如
array.join("-"); // 结果就是   1-2-3-4-5

Funtion 函数类型

public static int add(int a , int b) {
return a + b;
}
语法:

function 函数名(参数列表) {
    函数体
    return 返回结果
}
function add(a, b) {
    console.log(arguments);
    return a + b;
}

函数的参数是可变的, 形参和实参的个数可以不一致
例如,调用add(4,5) ==> 9
调用add(4,5,6) ==> 9 // 相当于第三个实参没用上
调用add(4) ==> NaN // b 参数没有赋值,是 undefined 结果是NaN
获取到所有实际参数: arguments

var a = 10; // 全局的变量 a
function test() {
    var a = 5; // 局部的变量 a ,与全局的a互不冲突
    console.log(a);
}

函数内定义的 var 变量才是局部变量, 函数外声明的var 都是全局变量

数组遍历

var array = [1,2,3,4,5]; 
// 其中函数的参数 i 是数组内第i个元素
array.forEach( function aaa(i) {
    console.log(i);
} );

匿名函数

array.forEach( function (i) {
    console.log(i);
} );

箭头函数

array.forEach( (i)=>{
    console.log(i);
} );
List<Integer> list = new ArrayList<>(); 

list.forEach( (i)->{
    System.out.println(i);
} );

Date 日期类型

var date = new Date();
console.log(date);
console.log(date.getFullYear());
console.log(date.getMonth());
console.log(date.getDate());
console.log(date.getHours());
console.log(date.getMinute());
console.log(date.getTime());

正则类型

定义正则表达式

var pattern = /正则表达式/;

// 匹配数字 [0-9]  \d
// 匹配所有英文字符 [a-zA-Z]  
// 匹配单词字符 [a-zA-Z0-9_] \w
// 匹配任意 .
// 匹配起始  ^  匹配结束  $
// 匹配次数 {m,n}  最少出现 m 次,最多出现 n 次
//  {m, } 最少出现 m 次, 没有上限
//  {0, } 0到多次 *
//  {1, } 1到多次 +
//  {0,1} 0到1次 ?

密码位数,最少3位, 最多10 位, 可以是任意英文字符和数字

var pattern = /^[a-zA-Z0-9]{3,10}$/;

手机号码校验 必须是 138或139 打头的

var pattern = /^13[89]\d{8}$/
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值