书写的三种方式
1. 书写在script标签里面(一般会用到的)
2.书写在js文件里面(推荐)
定义一个js文件(xxx.js)
3. 书写对应的事件属性里面(比较少用)
初体验
1. 目前js的代码,必须写在一个script标签里,script的默认type text/javascript
2. alert(‘字符串’)提示框
3. console.log(“hi”)
4. document.write(“在页面上输出”)
注释(注释相当于解释这个句话 这个注释是不会被编译的)
1.单行注释 ctrl + /
2.多行注释 ctrl + shift + a
变量定义(使用var关键词声明)
例:var number = a
1.使用var关键字,在内存中开辟一个空间,并给空间命名和给空间赋值
声明变量 : var myname=”xxx”
2.多个变量 简写:多个变量用”,”隔开,
var myname=”xxx” , age=20 , sex=”男”;
3.变量的默认值是 undefined 未定义类型
4.查看js的基本数据类型,使用 typeof
例: console.log(typeof “hi”)
js属于弱类型语言
1.可以是任意类型的数据
2.数据类型可以被修改
变量名的书写(见名知意 区分大小写)
1.只能是数字,字母,下划线,$
2.不能是数字开头
3.不能是关键字或保留字
4.严格区分大小写
5.驼峰命名法
小驼峰: 变量,形参,函数
大驼峰: 类型,构造函数
6.语义化,见名思意
7.普通变量首字母小写
常量全大写(const)
js的数据类型
1.string,number,bool,undefined,null,object
2.值类型数据类型 string,number,bool,undefined,null
3.引用类型 object (Array,Function..)
4.特殊的值 NaN –> number
5.特殊的类型: null,undefined
案例:
1). 字符串 String 由一组双引号或单引号组成的
var str = ‘a’;
var str1 = “b”;
console.log(typeof (str));
console.log(typeof (str1));
2). 数值类型 Number
var num1 = 100;
var num2 = 23.4
console.log(typeof (num2))
3). boolean 布尔类型,它值 (true/false); 真/假
var isLogin = true; //已经登录
var isReg = false; //没注册
console.log(isLogin); //true
4). undefined 未定义类型
防止程序出错,js会隐式设置一个默认的undefined
var sex;
console.log(typeof (sex)); //undefined
5). null 空地址
var a = null;
var b = null;
console.log(b);
6). 对象类型 Object
a.对象的写法1
var person = new Object();
person.name = “杨超越”;
person.age = 22;
person.address = “上海”
console.log(person); //{name: ‘杨超越’, age: 22, address: ‘上海’}
b.对象的写法2
var dog = {
name: “旺财”,
age: 4,
address: “湖南”
};
console.log(dog); //{name: ‘旺财’, age: 4, address: ‘湖南’}
元素类型的转换
var number = 1
// 数字转换为字符串
console.log(number.toString());
// String 转 number
var str = 123.12
console.log(Number(str));
// 转整数
console.log(parseInt(str));
// 转小数
console.log(parseFloat(str));
// isNaN 是NaN返回true不是返回false(not a number)
var a = 10
console.log(isNaN(a)); //false
var str = ‘abc’
console.log(isNaN(str)); //true
// 无穷大 无穷小(Infinity)
//无穷大
var max = Infinity
//无穷小
var min = -Infinity
// 将字符串转为对应的boolean类型
//转为boolean类型 非空就是true 空字符串表示false
var str = ‘abc’
var b = Boolean(str); //false
var b1 = Boolean(”) //true
console.log(b, b1);
// 将number转为布尔类型
var number1 = 10
//number转布尔 非0和非NaN则为true NaN和0就是false
console.log(Boolean(number1)) //true
console.log(Boolean(0)) //false
console.log(Boolean(NaN)) //false
// 将undefined和对应的null转为boolean( false)
var un
console.log(Boolean(un)) //false
console.log(Boolean(null)) //false
// 将boolean类转为number类型( false 0 true 1)
console.log(Number(true)) //1
console.log(Number(false)) //0
// 将对应的undefined和null转为number
var un
console.log(Number(un)) //NaN
console.log(Number(null)) //0
运算符和表达式
1.算术运算
+ – * / % ++(自增) –(自减)
2.拼接运算符:+,加号两边只要有一边出现字符串就是拼接
3.赋值运算符+=,-=,/=,*=
4.逻辑运算符:
与 & 找假
或 || 找真
非! 取反
&& || 被称为短路运算符
自增和自减的前置和后置的区别
前置先执行对应的++(–) 再执行对应的代码
后置先执行对应的代码 再执行++(–)
列如:
//俩个number相加
console.log(2 + 1); //3
//一个string和number相加 连接操作 自动转为string 字是黑色的属于字符串
console.log(‘123′ + 1); //1231
//boolean类型和null和undefined小于number 自动转为number
console.log(true+1);//2
//- * / % 全部会转为number类型进行操作
console.log(’12’-1);//11
console.log(true-1);//0
console.log(undefined-1);//NaN 出现NaN计算结果一个是NaN
console.log(null-1);//-1
console.log(true*3);//3
//% 取余 取模
//大数取余小数 得到的是余数 小数取余大数得到小数
console.log(6%3);//0
console.log(7%3);//1
console.log(4%3);//1
console.log(3%4);//3
//++ 在原本的基础上+1 — 在原本的基础上减一
var i = 1
//前置(先执行++(–)操作 再进行对应的代码块的执行)和后置 (先执行代码块再进行 ++(–)操作)
console.log(i++);//1
console.log(i);//2
console.log(++i);//3
console.log(i–);//3
console.log(i); //2
console.log(–i);//1
//计算顺序 先算括号里面的 ++或– 再进行乘除取余 再进行 + –
console.log(++i * 10); //20
// 赋值运算符+=,-=,/=,*=
var a = 10
a+=10 //=a+10
a/=10 //2
a*=5 //10
console.log(a);
位运算(转为二进制再进行位的变化运算)
>> 右移 << 左移 ~~ 去掉小数
例如:如何最快从2变成16
var i = 2
//位运算 快速从2得到8 二进制满2进1 值1 0
//2的二进制就是10 ==> 16的二进制就是10000
//左移后面是进行补零操作 最后一位是多少就是多少 0 + 2^0*1 +2^2*0 +2^3*0 +2^4*1=16 <<3相当于补了3个0
console.log(2<<3);
三元运算符(三目运算符)
// 表达式(boolean类型表达式)? true的内容 :false的内容
var a = 1
var b = 2
console.log(a < b ? 1: 2); //1
console.log(‘123a’ / 10 ? ‘hello’ : ‘hi’); //hi )
number保留几位小数的方法 toFixed
var number1 = 3
var number2 = 10
//默认的大小15位 整数位也是15位 超出不能显示(可以通过特殊方法解决)
console.log(number2 / number1); //3.3333333333333335
//保留小数(方法会优先调用) 转成字符串
console.log((number2 / number1).toFixed(3));//3.333
原创文章,作者:,如若转载,请注明出处:https://blog.ytso.com/tech/webdev/276959.html