1、js简介
netscape网景公司的开发的js,IE模仿开发起名为javascript,网景命名为Livescript。后来统一标准ECMAscript
Bridan Eich用十天开发出的语言。
基本语法:借鉴C语言和Java语言。数据结构:借鉴Java语言,包括将值分成原始值和对象两大类。函数的用法:借鉴Scheme语言和Awk语言,将函数当作第一等公民,并引入闭包。原型继承模型:借鉴Self语言(Smalltalk的一种变种)。正则表达式:借鉴Perl语言。字符串和数组处理:借鉴Python语言。
2、js的引入
3、js变量
//方式1:先声明,再赋值 var username; username="yuan" //方式2:声明并赋值 var username="yuan" //方式3:一次声明多个变量,并且类型可以不同 var username="yuan", age=23, high=1.7; //如果不用var,表示该变量是全局变量
4、注释
//单行注释
5、语句分隔
换行和分号都表示语句分隔
6、数据类型
1)数字类型
var x=3.14 var y=10 console.log(x,typeof x);//3.14 'number' console.log(y,typeof y);//10 'number'
2)字符串
//字符串创建有两种方式
var str1="字符串1";
var str2=new String("字符串2");
3)字符串操作
var str="hello world";
//字符传长度
console.log(str.length);//11
//把字符转换成大写
console.log(str.toUpperCase());//HELLO WORLD
//把字符转换成小写
console.log("HELLO".toLowerCase());//hello
//搜索字符在字符串的位置,字符串也有下标可以使用类似str[2]访问
console.log(str.indexOf("e"));//1
//正则匹配 match和python中使用的字符是一样的
var str = "我的电话是: 13312345678,你的电话: 13512345678";
var ret = str.match(/d{11}/g); // 匹配,提取数据
console.log(ret);//['13312345678', '13512345678']
//正则替换 replace
var str = "我的电话是: 13512345678";
var ret = str.replace(/(d{3})d{4}(d{4})/,"$1****$2"); // 正则 的 捕获模式 $1$2表示的正则中第一个和第二个小括号捕获的内容
console.log(ret);//我的电话是: 135****5678
//正则查找,找到返回下标,找不到返回-1
var str = "hello";
var ret = str.search(/l/);
console.log(ret);//2
//切片slice 可以是负数slice(开始下标,结束下标)
var str = "helloworld";
var ret = str.slice(3,6); // 开区间,不包含结束下标的内容low
//split 分割字符串
var str="上海-深圳-北京";
console.log(str.split("-"));//['上海', '深圳', '北京']
//join 合并数组
ll=['上海', '深圳', '北京']
console.log(ll.join("-"));//上海-深圳-北京
//trim() 去除两边空格
//substr(下标,数量)截取字符串
var str = "hello world";
var ret = str.substr(0,3);
console.log(ret); // hel
4)布尔值
在运算中,true=1,false=0
5)空值(undefined和null)
(1) 当声明的变量未初始化时,该变量的默认值是 undefined。
(2)s 当函数无明确返回值时,返回的也是值 undefined;
(3)如果函数或方法要返回的是对象,那么找不到该对象时,返回的通常是 null。
7、类型转换(强制类型转换和自动转换)
parseInt(100);//转换成整型 parseFloat(10.7);//转换成浮点型 var box3 = "3.14"; // 使用Number转换的数据里面必须是纯数字!!!!否则都会转换失败 // var box3 = "3.1.4"; // 转换失败! console.log( Number(box3) ); //转换失败即为NAN,也是Number数据类型 //转换成字符串类型的两种方式 var box4 = 3.14; var ret = box4.toString(); console.log(ret); ret = String(box4); console.log(ret); //布尔类型转换 Boolean(1);//true



