JavaScript3.0

Posted 364.99°

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JavaScript3.0相关的知识,希望对你有一定的参考价值。


3.对象

3.1 数字

javascript中的基本类型也有属性和方法
通过new Number()创建一个数字对象

关键字简介关键字简介
new Number创建一个数字对象MIN_VALUE
MAX_VALUE
最小值
最大值
NaN不是数字toFixed返回一个数字的小数表达式
toExponential返回一个数字的科学计数法表达valueOf返回一个数字对象的基本数字类型
<script>
  var a = new Number(9527);
  document.write('数字a的值:' + a + "<br/>");
  document.write('数字a的类型:' + typeof a);//数字a的类型为object
  document.write("<br/>");

  var b = 9528;
  document.write('数字b的值:' + b + "<br/>");
  document.write('数字b的类型:' + typeof b + "<br/>");//数字b的类型是Number

  document.write('Number的最大值:' + Number.MIN_VALUE + "<br/>");

  var c = 123;
  var d = new Number("123");
  document.write('数字123是否不是数字:' + isNaN(c)+ "<br/>");
  document.write('对象123是否不是数字:' + isNaN(d) + "<br/>");

  var e = 3.1415926;
  document.write('3.1415926保留两位小数:' + e.toFixed(2) + "<br/>");

  var f = 31415926;
  document.write('31415926的科学计数法:' + f.toExponential());  
</script>

3.2 字符串

关键词简介关键词简介
new String()创建字符串length字符串长度
charAt
charCodeAt
返回指定位置的字符concat字符串拼接
indexOf
lastIndexOf
子字符串出现的位置localeCompare比较两段字符串是否相同
substring截取一段字符串split根据分隔符,把字符串转换为数组
replace替换字符串
<script>
  var v = "13";
  var s1 = new String(v);
  document.write("变量v的类型:" + typeof v + "<br/>");
  document.write("变量s1的类型:" + typeof s1 + "<br/>");
  document.write("字符串s1的长度:" + s1.length + "<br/>");
 
  var s2 = new String("Hello ");
  document.write("获取字符串位置4上的字符:" + s2.charAt(4) + "<br/>");
  document.write("获取字符串位置4字符的Unicode码:" + s2.charCodeAt(4) + "<br/>");
  
  var s3 = new String("World");
  document.write("将s2与s3拼接起来:" + s2.concat(s3) + "<br/>");
  
  var s4 = s2.concat(s3);
  document.write("字符串Wor在s4中第一次出现的首字符的位置:" + s4.indexOf("Wor") + "<br/>");
  document.write("字符串Wor在s4中最后一次出现的首字符位置:" + s4.lastIndexOf("Wor") + "<br/><br/>");
  
/*相同返回0,非0表示不同,
  1:字母顺序靠后
  -1:字母顺序靠前;*/
  var s5 = "abcd";
  var s6 = "abcd";
  var s7 = "aabc";
  document.write("比较s5与s6是否相同:" + s5.localeCompare(s6) + "<br/>");
  document.write("比较s5与s7是否相同:" + s5.localeCompare(s7) + "<br/><br/>");
  
//截取字符串,左闭右开,位置6上的字符能取到,位置9上的字符不能取到
  document.write("截取s4的6~8位:" + s4.substring(6,9) + "<br/>");
  document.write("截取s4的6到最后一位" + s4.substring(6) + "<br/><br/>");

//分隔字符串,将字符串转换为数组
  var s8 = "Hello,Java,Script";
  document.write("将Hello World按照空格分隔为数组" + s4.split(" ") + "<br/>");
  document.write("将Hello Java Script按照,分隔为数组,且只保留前面两个" + s8.split(",",2) + "<br/><br/>");

//替换子字符串
  document.write("替换字符串s8中第一个H为h:" + s8.replace("H","h") + "<br/>");
  document.write("替换s8中的所有l为L:" + s8.replace(/l/g,"L") + "<br/>");
  var regS = new RegExp("a","g");
  document.write("替换s8中所有的a为A:" + s8.replace(regS,"A") + "<br/><br/>");

</script>

3.3 数组

JavaScript中的数组是动态的,长度可以发生变化

关键字简介关键字简介
new Array创建数组对象length数组长度
for
for in
遍历数组concat连接数组
unshift
shift
分别在最开始的位置插入数据和获取数据(获取后删除)push pop分别在最后的位置插入数据和获取数据(获取后删除)
sort数组排序sort(comparator)自定义排序算法
join指定分隔符,返回数组的字符串表达式reserve对数组的内容进行反转
slice获取子数组(左闭右开)splice删除和插入数组
<script>
  function println(s,v){
    document.write(s + v);
    document.write("<br/>");
  }
 
  var x = new Array();//创建长度为0的数组,
  println("长度为0的数组x:",x);
  y = new Array(3);//创建长度为3的数组
  println("长度为3的数组y:",y);
  println("数组y的值:",y[1]);
  z = new Array(1,2,3,4,5);//根据参数创建数组
  println("填写了参数的数组z:",z);
 

  //连接数组
  var a = new Array(6,7);
  b = a.concat(z);
  //遍历数组
  for(i=0;i<z.length;i++){//使用普通for循环
    document.write(z[i]+"<br>");
  }
  for(i in b){//使用增强for循环
    document.write(b[i]+"<br>");
  }
  //指定分隔符,返回数组的字符串表达式
  m = b.join("*");
  println("字符串m:",m);
  
  //在最后的位置插入数据与获取数据,
  println("数组a:",a);
  a.push(8);
  println("在最后插入数据后的a:",a);
  a.pop();
  println("取出最后位的数据后的a:",a);
  //shift与unshift效果相同
  
  //对数组进行排序,默认从小到大排序
  var n = new Array(7,6,9,4,2,3);
  println("原数组n:",n);
  println("对数组n进行排序后的数组:",n.sort());
  //自定义排序(从大到小)
  function comparator(v1,v2){
    return v2-v1;
  }
  println("对数组n进行从大到小排序:",n.sort(comparator));
  
  //反转数组内容
   println("对数组n进行反转:",n.reverse());
  //获取子数组slice,类似于substring
  println("截取数组n的2到5位:",n.slice(2,6));
  
  //删除与插入元素
  n.splice(3,3);
  println("从n的第3个位置删除3个元素:",n);
  n.splice(2,0,1,2,3);
  println("从n的第2个元素插入3个元素:",n);
  
</script>

3.4.日期

关键词说明
new Date创建日期对象
getFullYear
getMonth
getDate


getHours
getMinutes
getSeconds
getMillseconds



毫秒
getDay周几
getTime过去的毫秒数(1970/1/1 08:00:00至今)
setFullYear
setMonth
setDate
setHours
setMinutes
setSeconds
修改日期与时间
<script>
  //定义输出函数
  function println(a,b){
    document.write(a + b);
    document.write("<br>");  
  }

  //创建时间对象
  var date = new Date();
  println("当前时间:",date);
  //分别获取时间
  document.write(date.getFullYear() + "/");
  document.write(date.getMonth() + "/");
  document.write(date.getDate() + "   ");
  document.write(date.getHours() + ":");
  document.write(date.getMinutes() + ":");
  document.write(date.getSeconds() + "<br>");
  document.write("周" + date.getDay());
  //修改时间
  document.write(date.setFullYear(2022));
</script>

3.5.Math

关键字说明
E
PI
自然对数
π
abs绝对值
min
max
最小值
最大值
pow求幂
round四舍五入
random随机数
<script>
  var a = 7 + Math.random() * 6;
  var ar = new Array(13);
  for (var i = 0; i < ar.length;i++){
    ar[i] = Math.random()*100;
  }
  document.write(Math.round(Math.PI) + "<br>");
  for (var each in ar){
    document.write(each + " ");
  } 
</script>

3.6.自定义对象

关键字说明
new Object()创建一个对象
每创建一个对象都得重新定义所有属性
function设计一种对象
先设计一个类似于“类”的函数,然后“实例化此类”,当然js中没有类,只是工作流程类似
prototype向function中增加新的方法
<script>
  //使用new Object创建对象
  var role1 = new Object();
  role1.name = 'Jean';
  role1.age = 11;
  role1.live = function(){
    document.write(role1.name + "存活" + "<br>");
  }
  role1.live();

  //使用function设计对象
  function Role(name,age){
    this.name = name;
    this.age = age;
    this.live = function(){
      document.write(this.name + "存活" + "<br>");    
    }
  }
  //向Role中增加方法
  Role.prototype.hurt = function(){
    document.write(this.name + "已受伤" + "<br>");
  }
  
  var role2 = new Role('Galen',13);
  role2.live();
  role2.hurt();
</script>

以上是关于JavaScript3.0的主要内容,如果未能解决你的问题,请参考以下文章

VSCode自定义代码片段——CSS选择器

谷歌浏览器调试jsp 引入代码片段,如何调试代码片段中的js

片段和活动之间的核心区别是啥?哪些代码可以写成片段?

VSCode自定义代码片段——.vue文件的模板

VSCode自定义代码片段6——CSS选择器

VSCode自定义代码片段——声明函数