javascript应该写在什么位置
- 内部引入
<body>
<script>
(javascript代码在body的内部的最后位置)
</script>
</body>
- 内嵌引入
<script src=""路径></script>
命名规范
1.可以包含字母,数字,下划线_,$.
2.不能数字,汉字,标点符号开头.
3.最好有明确的含义.
常规命名法
匈牙利命名法 var myname=“卡卡西”
下划线命名法 var my_name=“卡卡西”
小驼峰命名法 var myName=“卡卡西”
大驼峰命名法 var MyName=“卡卡西”
变量
变量的两种声名方法
<script>
var name;
name="卡卡西";
var name="卡卡西";
</script>
弹框
<script>
alert("我的名字叫自来也");//弹框
var name=confirm("你的名字叫卡卡西");//确认框
alert(name);
// 点击确定,就是true
// 点击取消,就是false
var content=prompt("请输入你的姓名和年龄");//输入框
alert(content);
// 点击确定,content值就是手动输入在输入框内部的值
// 点击取消,返回null
</script>
alert()的全写为window.alert()
输出方法
console系列
<script>
console.log("我的名字叫卡卡西");//普通控制台输出
console.error("我的名字叫卡卡西");//打印错误信息
console.warn("我的名字叫卡卡西");//打印警告信息
</script>
在页面输出
<script>
document.write("我的名字叫卡卡西");
</script>
补充(浏览器的读取机制)
无论在输出内容的时候写入了多少个空格,最后都显示成一个空格
解决方法
document.write(" "+"卡卡"+" "+"西")
document.write("<span style='white-space:pre;'>"+"卡 卡 西"+"</span>");
卡卡 西
卡 卡 西
数据类型
- 简单数据类型
数字(number)
字符串(string)
布尔(bollean)
空(null)
未定义(undefined)
number
var num="456";
console.log(typeof(num));
console.log(typeof(Number(num)));
- number_有关NAN
当包含非数字的时候,Number()就会返回NAN.
NAN
NAN 不等任何值(包括本身) 我就是我,我就是这个色的烟火
var num=456;
console.log(isNaN(num));//判断是不是不是一个数字
//如果是一个数字,转换成false,如果不是数字,转换成true。
parseInt和parseFloat;
var num=3.1415926;
console.log(typeof(num));
console.log(parseInt(num));
console.log(parseFloat(num));
parseInt_NAN(如果是数字开头,就返回合法的数字部分,如果是文字开头,返回NAN);
number
3
3.1415926
string(字符串);
- string()
var num=456;
console.log(typeof(num));
console.log(typeof(String(num)));
- tostring()
var num=456;
console.log(typeof(num));
console.log(typeof(num.toString()));
string和tostring的区别
String()可以转换null和undefined
toString()不可以转换undefined和null
<script>
var content=null;
console.log(typeof content);
console.log(typeof String(content));
console.log(typeof undefined);
console.log(typeof String(undefined));
console.log(typeof null.toSring());
console.log(typeof undefined.toSring());
</script>
String()弥补了toString()的不足之处.
bollean() 转布尔值;
<script>
//Boolean
console.log(Boolean("卡卡西"));//true
console.log(Boolean("火影忍者5周年"));//true
console.log(Boolean("456"));//true
console.log(Boolean(" "));//true
console.log(Boolean("null"));//true
console.log(Boolean("undefined"));//true
console.log(Boolean(""));//false
</script>
// 只要引号里面有占位(即使是空格),就会转换成true.
null和undefined的区别;
面试题
// null和undefined区别 // null表示空,undefined表示未定义 // 关键字 // null是关键字 undefined不是 // 转换的值不同 // undefined转换NaN null为0 // console.log(undefined*10); // console.log(null*10); // 比较运算符 = 赋值 ==比较两个值是否相等 ===比较两个值是否相等(值的类型) // console.log(null==undefined); // console.log(null===undefined); // null和undefined类型不一样 // 应用 // null当使用一个比较大的对象,需要对其进行释放内存,这个时候,需要设置成null // console.log(111=="111"); // console.log(111==="111"); // Boolean() 有值,true 没有,false 0false 1true
复杂数据类型转换_obj_数组
万物皆对象
- 对象_object
对象名字{
属性:值,
属性:值,
属性:值
};
value={
name:"卡卡西",
"年龄":30,
"工资":21000
};
console.log(value);
获取属性的方法—>>>
console.log(value.name);
console.log(value["name"]);
- 数组
var num=[1,2,3,4,5,6,7,8,9];
console.log(num);
console.log(num.length);//9
console.log(num[0]);
console.log(num[8]);//下标从0开始到num.length-1
三目运算符(#?#:#);
条件表达式?语句1:语句2
当条件表达式成立时执行语句1,负者执语句2;
//输入四个数最后输出最大值
alert("接下来请输入四个数");
var a1=prompt("请输入第1个数");
var a2=prompt("请输入第2个数");
var a3=prompt("请输入第3个数");
var a4=prompt("请输入第4个数");
var min='';
a1<a2?min=a1:min=a2;
min<a3?min=min:min=a3;
min<a4?min=min:min=a4;
alert("最小的数是"+min);
Math系列;
console.log(Math.min(1,2))//1 console.log(Math.max(1,2))//2
console.log(Math.abs(-3.14))//3.14产生绝对值
console.log(Math.random())//产生一个0~1之间的数字
console.log(Math.ceil(3.14))//4_产生一个向上取整的数,如果有小数部分,整数部分+1
console.log(Math.floor(3.14))//3_产生一个向下取整,舍弃小数部分的数和parseInt()类似
比较运算符
== === != !== > < >= <=
== 和=== 与 != 和 !==的区别
当运算符的字符是三位是数据类型也要相等
逻辑运算符
与(&&)或(||)非(!)
&&与 要求前后两个表达式必须同时满足 true
||或 前后两个表达式满足一个就可以 true true/false
!非 对当前的表达式进行否定 否定
自增/自减运算符
i++ ++i i-- --i
++/--在前,先自增/自减,然后再赋值
++/--在后,先赋值,再自增/自减
获取本地时间
<script>
//获取本地时间
var time=new Date();
console.log(time);
console.log(time.toLocaleString());
console.log(time.toLocaleDateString());
console.log(time.getFullYear());
console.log(time.getMonth());
console.log(time.getDate());
console.log(time.getHours());
console.log(time.getMinutes());
console.log(time.getSeconds());
console.log(time.getMilliseconds());
console.log(time.getDay());
</script>
// new 运算符
// 时间
var x = new Date();//获取本地时间
// document.write(x+"<br>");
// document.write(x.toLocaleString()+"<br>");
// document.write(x.toLocaleDateString());
// 时间日期的方法
// !!!以下知识点没有难处,难点就在于需要记住
// 获取年份
// console.log(x.getFullYear());
// 获取月份
// console.log(x.getMonth());//比实际的月份小1
// 获取日
// console.log(x.getDate());
// 获取小时
// console.log(x.getHours());
// 获取分钟
// console.log(x.getMinutes());
// 获取秒钟
// console.log(x.getSeconds());
// 获取毫秒
// console.log(x.getMilliseconds());
// 获取星期
// console.log(x.getDay());
// 周天0 周一1 周二2 周三3 周四4 周五5 周六6