交换两个变量的值
<script> // var num1='肥宅快乐水'; // var num2='雪碧'; // console.log('交换以前',num1,num2); // var temp=num1;//num1空了 // num1=num2;//num2空了 // num2=temp; // console.log('交换以后',num1,num2); // var num1=100; // var num2=200; // console.log('交换以前',num1,num2); // var num3=num1+num2; // num1=num3-num1; // num2=num3-num1; // console.log('交换以后',num1,num2); //这种方式仅限于 变量里面的内容是数字 //位运算 计算机底层 //第三种方式 就是位运算 var num1=5; var num2=4; console.log('交换以前',num1,num2); num1=num1^num2; num2=num1^num2; num1=num1^num2; console.log('交换以后',num1,num2); // ^ 按位异或 //第一步把5和4转成2进制 //00000101 5 //00000100 4 // 第二步 对齐 不足8位左侧补0 // 第三步 上下相同为0 上下不同为1 // 第四步 得到二进制 // 第五步 二进制转十进制 </script>
变量名命名规则
规则:必须遵守的,不遵守就是错
1.一个变量名称可以由数字、字母(a-zA-Z)、英文下划线(_)、美元符号($)组成
2.严格区分大小写var qf;和var Qf;
3.不能由数字开头18age是错误的
4.不能是保留字或者关键字编辑器中高亮的部分
5.不要出现空格
规范:建议遵守的(开发者默认),不遵守不会报错变量名尽量有意义(语义化) nl-age
遵循驼峰命名规则,由多个单词组成的时候大驼峰UserName 小驼峰userNameKangbazi
不要使用中文
<script> //1整数 var num1=100; console.log('整数:',num1); //2浮点数 小数 var num2=100.5; //3指数 var num3=10e5;//10*10的五次方 //4圆周率 固定不变的 常量 var PI=3.14;//大写表示常量 固定不变的 console.log('常量:',PI); //虽然告诉系统我是二进制八进制十六进制 //转成10进制以后输出 //5 二进制 0 1 0b前缀 二进制 //210 //101 //5 二进制 0 1 var num4=0b101;//开头是0b console.log('二进制:',num4); //6八进制01234567 var num5=077;//0开头 8进制 console.log('八进制:',num5); //7十六进制 0123456789 abcdef 0x开头表示十六进制 var num6=0xea123; console.log('十六进制:',num6); //8最大值 var num7=Number.MAX_VALUE; console.log('最大值:',num7); //9最小值 var num8=Number.MIN_VALUE; console.log('最小值:',num8); //10正无穷 var num9=num7*2; console.log('正无穷:',num9); //负无穷 var num10=-num7*2; console.log('负无穷:',num10); //非数字 var num11='kangbazi'-100; console.log('非数字:',num11); isNaN()//系统提供的工具 判断一个值是否是数字 //是数字 得到一个结果 false //不是数字 得到一个结果 true console.log(isNaN(num1)); console.log(isNaN(num10)); console.log(isNaN(num11)); </script>
字符串的长度
<script> var str1='你 好' alert(str1.length);//输出字符串的长素 //空格 标点符号也占长度 </script>
+两边都是数字 那么求和
+两边如果有一个是字符串 那么就像胶水连在一起
+ 数字相加,字符相连
undefined和字符串相加的时候,输出原码
undefined和数值相加的时候,输出NaN
null当跟字符串进行相加,输出原码
null 当跟数值进行运算的时候 会把null转成0
数据类型
string字符类型
number数值类型
boolean 布尔类型
undefined未定义
object对象 null也是一个特殊的对象