山西网站建站系统哪家好,建设摩托车,调兵山 网站建设,徐州网站建设熊掌号数据类型 基本类型 stringnumberbooleanundefinednumber类型,包含整数浮点数 NaN和自己都不相等,涉及NaN的计算结果都是NaN isNaN()函数用于判断一个数是不是NaN 引用类型 object类型 function类型 继承自object object类型定义了prototype属性 可以通过它动态给对象绑定方法和…数据类型 基本类型 stringnumberbooleanundefinednumber类型,包含整数浮点数 NaN和自己都不相等,涉及NaN的计算结果都是NaN isNaN()函数用于判断一个数是不是NaN 引用类型 object类型 function类型 继承自object object类型定义了prototype属性 可以通过它动态给对象绑定方法和属性 内置对象 String 封装了很多方法,如 split() replace(),indexof(),includes() Array JS中的数组,在数组中可以保持任何类型的数据,并且数组的长度会自动的增加 创建数组对象: 方式1:用这种方式创建数组的时候我们并没有指明数组元素的类型和数组对象的长度var arr new Array();方式2:用这种方式创建数组的时候我们指明了数组对象的长度var arr new Array(5);方式3:用这种方式创建数组的时候我们指明了数组对象的长度var arr new Array(Hello, World, 23, 5.6);方式4:var arr [Hello, World, 23, 6.3, true, false, new Date()];Date 常用方法 var dnew Date();
undefinedd
2019-01-26T11:13:49.912Zd.getTime();
1548501229912d.toString();
Sat Jan 26 2019 19:13:49 GMT0800 (GMT08:00)d.toLocaleString();
2019-1-26 19:13:49Math 注意:JS中的Math类和Java中的Math类类似.都是用来执行某些算术操作的 都是不能创建对象的.类似于Java中,通过类名.xxx,类名.xxx()调用属性和方法 var pai Math.PI;var num Math.max(10, 30); Regexp 正则表达式就是专门来处理String数据的.按照特定的规则,用正则元素指定一个有规则的模板 (例如邮箱的规则),然后测试某个String是否符合这个规则.(也就是测试某个String是否符合邮箱的规则) 使用方式: 创建正则对象 调用test()方法 被测试字符串满足正则规则返回true // 测试参数string是否是有效的中文字符// JS中字符是采用UniCode编码的,每个国家的字符都在在UniCode编码的某个范围之内function checkChinaese(str) {var re [\u4e00-\u9fa5]; // 中文的编码范围var regExp new RegExp(re); // 创建正则表达式对象if (regExp.test(str)) {return true;} else {return false;}} 创建正则对象的方式: var reg new RegExp(^[hH]ello$);var reg /^[hH]ello$/ var reg /^[hH]ello$/
undefinedreg.test(hello);
truereg.test(Hello);
truereg.test(Hello1);
falsereg.test(Hffellasdfo1);
false 数据类型转换 typeof()函数检查数据的类型 js和python一样会自动将数据转换成boolean类型用于条件表达式 转换规则: 0 NaN undefined null -false 底层实现是调用了Boolean()函数 const PI 3.14;if (PI){console.log(PI is true);
} 非数值类型转数值类型 可以使用Number()函数使用parseInt()函数使用parseFloat()函数常用parseInt()parseFloat()将string转数值 非string转string toString() (null和undefined不能用这个方法)String()函数,该函数可以将任何类型数据转换为String,包括null和undefinednull,undefined,NaN的比较 undefined与null是相等NaN与任何值都不相等与自己也不相等。变量声明 var 声明变量 const 声明常量,必须赋初始值,且不能修改. let 声明局部变量 运算符 JS中的 和java中的 相同点 对于基本类型来说,是比较两个基本类型的值是否相等对于引用类型来说,是比较两个引用的地址是否相同JS中的 和java中的 不同点 下面这种写法在java中是错误的.但是在JS中是可以的.在js会吧两个不同类型的变量转换成相同的类型,然后再去比较转换的规则如下:当两个运算数的类型不同时将他们转换成相同的类型 1)一个数字与一个字符串字符串转换成数字之后进行比较。2)true转换为1、false转换为0进行比较。这是java没有的.具体的用法: 只有两个变量的类型一致的时候,才会去比较.如果两个变量的类型不一致则直接返回false 既要比较变量的类型,又要比较变量的值delete delete运算符的使用,有三种形式 删除对象中的某个属性.但是不会影响其他的对象删除数组中的某个元素,但是不会影响数组的长度和其他的数组元素用在with语句中void指定要计算一个表达式但是不返回值 hrefjavascript:void(0) 不会重新刷新页面 函数 js没有函数重载 声明方式1 function add(x, y){return x y;
}
//形参 不用var/let/const 也没有类型,不用有返回值类型,只能返回1个值 声明方式2 add function (a, b) {return a b;
}; 流程控制 switch swich语句的条件是任何类型的变量 var s1 hello;
switch(s1){case hello:console.log(hello world);break;case world:console.log(world);break;default:console.log(上述条件都不满足的情况);break;
} for 常规for循环 for (let i 0; i 10; i) {console.log(老婆,我想你);
} for in (类似python中的for in 但是jsforin 只能取到Index) const array [3, 6, 8, 9, 呵呵, false]for (let index in array) {console.log(array[index]);
} while/do while/if和java一样 面向对象 声明类创建对象调用对象的属性和方法function Boy(name, age) {this.name name;this.age age;this.sayHello function (name) {return Hello name !;}this.toString function () {return [name: this.name ,age: this.age ];}
}let boy new Boy(小明, 12);
console.log(boy.toString());
console.log(boy.sayHello(Jack)); with语句,简化对象的访问,不用obj.xx. let boy new Boy(小明, 12);with (boy) {console.log(name);sayHello(Rose);console.log(toString());
} JSON eval()函数 我们把一段有效的JS代码放到了一个String中 eval()函数就可以解析并执行String中有效的js代码 var s2 console.log(hello js!);
undefinedeval(s2);
hello js!
undefined JSON定义语法 JavaScript对象标记,可以简化自定义对象的使用过程,定义并实例化一个js对象 JSON语法 : var 变量 { 属性: 属性值, 属性: 属性值, 属性: 属性值 // 注意:最后一个语句后面没有, }; 属性值 可以是 任何类型,(当然也可以是数组了) var xx {name:jack,age:12}
undefinedxx
{ name: jack, age: 12 }xx.age;
12xx[age]
12属性的访问方式: xx.属性名xx[属性名]定义有方法的JSON对象 function sayHi(name) {console.log(你好, name !!);
}var stu {name: 张小三, age: 12, sayHello: sayHi}stu.sayHello(小明); 定义复杂的JSNO对象,属性名可以用字符串,也可以不用. var per {name: 张三,addr: { // 地址的属性是另外一个JSON对象city: 北京,street: 大兴区,zipcode: 100012},aihao: [抽烟, 喝酒, 烫头] // 爱好属性的值是一个数组}; 使用JSON来传输数据 // 下面这个string就是从服务器端返回的json格式的stringvar str var user {name: 张三,age : 23,address:北京市大兴区};// 使用eval函数解析并执行这个从服务器端返回的stringeval(str)// 访问对象的属性console.log(user.name user.name ,age user.age ,address user.address); 转载于:https://www.cnblogs.com/endurance9/p/10324730.html