文章目录

  • 一.数组
    • 1.数组API(方法)
    • 2.二维数组
    • 3.截取字符串
  • 二.math对象
  • 三.Date对象
  • 四.数学
    • 1.计算平方
    • 3.计算阶乘
  • 五.正则表达式
  • 六.网络和谐语
  • 七.jQuery选择器
  • 篇章

一.数组

1.数组API(方法)

① API:应用程序编程的接口,预定义叫的一些方法或者函数
②toString():将数组中元素按逗号组成合成字符串
③ join(""):将数组中的元素按指定字符组合成字符串,默认是逗号

<script>var arr1=['tom','marry','king'];var arr2=['sun','mark','method'];console.log(arr.toString());console.log(arr1.join('|'));concat(arr1,arr2);//拼接多个数组console.log(arr1.concat(arr2));
</script>

④数组.slice(start,end)返回新数组包含从start到end(不包含该元素)的数组中的元素,该方法并不会修改数组,而是返回一个子数组。
注意点:1.可以使用负数从数组的尾部截取元素。
2.如果end未被规定,那么slice()方法会选取从start到数组结尾的所有元素。

<script>       console.log(arr.slice(2));//下标2(第三个)-最后console.log(arr.slice(2,5));//2-4console.log(arr.slice(-4,-2));//-4到-3
</script>

创建数组a-g.每一个字符是一个元素,分别截取cd,f,b,把截取到的结果拼接成一个新的数组

<script>   var arr=['a','b','c','d','e','f','g'];console.log(arr.slice(2,4));console.log(arr.slice(5,6));console.log(arr.slice(1,2));
</script>

⑤splice(start,cont,value1,value2…):删除数组中的元素,start开始的下标,count删除的长度。
⑥ value1删除后补充的元素;count为空的话,删除到最后,start为负数表示倒数,返回值是删除的元素,原数组不会发生变化。

<script> arr=['tom','mary','king','sun','mark','method'];console.log(arr.splice(3));//从下标3开始 全删除console.log(arr.splice(3,2));//从下标3开始 删2个console.log(arr);
</script>

创建s数组,包含a-h,每个字母是一个元素,删除d,e,将替换为m,在下标为2的位置插入元素z

<script>     var arr=['a','b','c','d','e','f','g','h'];console.log(arr.splice(3,2));console.log(arr.splice(3,1,'m'));console.log(arr.splice(2,0,'z'));console.log(arr);sort();对数组进行排序,默认是按照Unicode码进行从小到大发排序var arr=[0,5,6,8,3,4];var arr=[23,45,6,31];console.log(arr.sort(function(a,b){return a-b;//按照数字从小到大排序return b-a;//按照数字从大到小排序}));
</script>

push():往数组末尾添加元素,返回数组的长度

<script>  var arr=['a','b','c','d'];console.log(arr.push('e'));console.log(arr);
</script>

pop():删除数组末尾的元素,返回删除元素的元素

<script>var arr=['a','b','c','d'];console.log(arr.pop());console.log(arr);
</script>

unshift():往数组的开头添加元素,返回数组的长度

<script>var arr=['a','b','c','d'];console.log(arr.unshift('z'))
</script>

shift():删除数组开头的元素,返回数组的与元素

<script>var arr=['a','b','c','d'];console.log(arr.shift('z'))console.log(arr);
</script>

2.二维数组

二维数组:数组中的每个元素也是数组

<script> var city=[['海淀区','东城区','西城'],['杭州市','宁波市','嘉兴市','金华市'],['唐山','保定','秦皇岛','廊坊'],['兰州市','威武市','嘉峪关','张掖市']];console.log(city[1][1]);
</script>

①二维数组访问:arr[下标][下标]
②包装对象:目的让原始类型像引用类型一样,具有属性和方法
③js提供三种包装对象:String,Number,Boolean
④String 将任意岛数据转为字符串
⑤new String(值):返回对象,将字符串包装成对象

<script> var str='a';var str1=new String('a');console.log(str,typeof str);//string +1 a 1console.log(str1,typeof str1);//object +1console.log(str,typeof str+1);// a 1console.log(str1,typeof str1+1);//a 1var Str='Hello';//将引文字母转大写console.log(str.toUpperCase());console.log(str1.toLowerCase());
</script>

①初始化4个英文字母(有大小写),循环弹出提示框,输入四个字符(不区分大小写),如果输入正确结束循环

<script> var str='Word';while(true){var code=prompt('input code');if(str.toUpperCase() == code.toUpperCase()){break;}}
</script>

①字符串API
②charAt():获取下标对应的的字符
③ 遍历字符串javascript,获取a字符出现的次数

<script> var str='javascript';for(var i= 0,count=0;i<str.length;i++){//判断字符是否为aif(str.charAt(i)=='a'){count++;}}console.log(str.charAt(3));//下标对应的字符console.log(str.length);//获取字符的长度indexOf(value,start);//查找某个字符串的下标,value是要查找的字符串,start开始下标,默认是0,如果找不到返回-1var str='javascript';console.log(str.indexOf('s'));;//4lastIndexOf(value);//查找字符串最后一次岛下标,找不到返回-1console.log(str.lastIndexOf('m'));
</script>

练习:声明变量保存邮箱,检测是否为邮箱格式,如果是打印true,否则打印false

<script> var str='tom@163.com';if(str.indexOf('@') >=0) {console.log(true);}else{console.log(false);}slice(start,end);//start开始的下标,end是结束的下标(不包含end本身),end为空截取岛末尾,负数表示倒数var str='tom123@163.com';//分别截取用户名和服务器名称console.log(str.slice(0,3));console.log(str.slice(4,11));
</script>

分别截取年月日,打印1997年10月26日,性别男

<script> var s='1103333101012120901';var year= s.slice(6,10);var month= s.slice(11,12);var date= s.slice(12,14);var sex= s.slice(-2,-1);console.log(sex);sex=sex%2==0?'女':'男';console.log('年'+year+'月'+month+'日'+date+'性别'+sex);
</script>

3.截取字符串

①substr(start,count);
//start开始下标,count截取长度,如果count为空,截取到最后,start为负数表示倒数
② subString(start,end);
//start开始下标,end结束为空,end为空,截取到最后,如果下标为负数,自动转为0

<script> var s='110121212342315678';split(step);//将字符串按照制定的字符分割成数组,step指定字符,返回数组var str ='tom@tedu.cn';var arr=str.split('@');console.log(arr[0],arr[1]);
</script>
<script>
// 匹配模式:用于查找,替换字符串
//search(value)//用于查找满足条件的第一个下标,iindexOf,如果找不到就返回-1
//replace(value1,value2)查找并替换,value1是要查找的字符串,value2是要替换的字符串var str='China是世界上人口最多的国家,China的互联网高速发展,China有好多程序员,欢迎来到China';
//所有China替换成中国
//i--ignore 忽略大小写
//g--global 全局查找console.log(str.replace('/China/ig','中国'));
</script>

二.math对象

<script>
//Math对象:不需要创建,可以直接使用
//    console.log(Math.pi);//圆周率
//    console.log(Math.abs(1-2));//绝对值
//    console.log(Math.floor(3.5));//向下取整
//    console.log(Math.ceil(3.1));//向上取整
//    console.log(Math.round(5.6));//四舍五入取整
//    console.log(Math.max(1,2,3));
//    console.log(Math.min(1,2,3));
//    console.log(Math.pow(10,3));//获取x的y次幂
//    console.log(Math.random());//获取随机数
//    练习:创建数组,包含多个字母,每次运行,随机取一个元素
//    var arr=['a','b','c'];
//    var index=Math.floor(Math.random()*arr.length);
//    console.log(arr[index]);//练习:随机获取a-z之间的4个字母,组成一个新数组(push)var arr=[];for(var i=97;i<=122;i++){arr.push(String.fromCharCode(i));}var arr1=[];for(var i=0;i<4;i++){var index=Math.floor(Math.random()*arr.length);console.log(index);arr1.push(arr[index]);}document.write(arr1);
</script>

三.Date对象

<script> var d1=new Date('2019/9/19 16:38:00' );
//    var d2=new Date();//系统当前时间
//     var d3=new Date(24*60*60*1000).getTime();//存储距离计算机元年的毫秒数
//     console.log(d3);//获取存储的日期时间
//            getFullYear,
//            getMonth,
//            getDate,
//            getHours,
//            getMinutes,
//            getSeconds,
//             getDay
// 打印出2019年3月17日 10点39分50秒var d1=new Date('2019/3/17 10:39:50');var year=d1.getFullYear();var month=d1.getMonth()+1;var date=d1.getDate();var hour=d1.getHours();var mon=d1.getMinutes();var seconds=d1.getSeconds()console.log(year+month+date+hour+mon+seconds);
</script>

四.数学

1.计算平方

<!DOCTYPE html>
<html>
<head lang="en"><meta charset="UTF-8"><title>计算平方</title><script>function pf(){console.log(1);//根据id获取文本框//通过id找到相应的元素,获取值,或者修改元素的值,让静态网页动起来var input=document.getElementById("num");console.log(input);//获取文本框的值var n=input.value;console.log(n);//获取spanvar span=document.getElementById("result");console.log(span);//判断文本框的值是否为数字if(isNaN(n)) {//不是数字,向span写入提示信息span.innerHTML = "请输入数字";}else{//是数字,计算平房并写入span.innerHTML=n*n;}}</script>
</head>
<body>
<input type="text" id="num"/>
<input type="button" value="平方" onclick="pf();"/>
<span id="result"></span>
</body>
</html>

3.计算阶乘

<!DOCTYPE html>
<html>
<head lang="en">
<meta charset="UTF-8">
<title>计算阶乘</title><script type="text/javascript">function jc(n){var input=document.getElementById("num");var n=input.value;if(isNaN(n)) {//不是数字p = document.getElementById("result").innerHTML = "请您输入数字";}else{if(n<0) {var  p=document.getElementById("result").innerHTML="没有阶乘";}else if(n>=1){for(var i= 1,r=1;i<=n;i++){r=r*i;}p = document.getElementById("result").innerHTML = r;}else if(n==0){p = document.getElementById("result").innerHTML = "1";}}}</script>
</head>
<body>
<input type="text" id="num">
<input type="button" value="计算"onclick="jc();"><p id="result"></p></body>
</html>

五.正则表达式

<script> //4.RegExpvar str="no zuo no die,no can no bb.";var reg=/no/;//正则对象的方法//reg.test(str)//检测str中是否包含reg匹配的子串.console.log(reg.test(str));
</script>

六.网络和谐语

<script> var str="sb cb wqnmlgb gun ccc";//多个敏感词汇以|,gi:全局替换并不区分大小写var reg=/s|cb|wqnmlgb|gun/gi;console.log(str.replace(reg,"*"));
</script>

七.jQuery选择器

<!DOCTYPE html>
<html>
<head lang="en"><meta charset="UTF-8"><title>jQuery选择器</title><!--引入jQuery框架必须在所有的js之前--><script src="js/jquery-3.4.1.js"> </script><script>//点击+将所有的p标签,返回值为数组,哪怕只有一个p标签,返回值也是数组function bigger(){console.log(1);// 获取第一个p标签console.log($("p")[0]);//获取第一个p标签的文本console.log($("p")[0]).innerHTML;//获取第二个input标签的value属性的值console.log($("input")[1].value);//获取p的原始字号var size=$("p").css("font-size");console.log(size);//将16px转换成16size=size.replace("px","");console.log(size);//字号+1,再设置给所有的p$("p").css("font-size",++size+"px");console.log(size);}</script>
</head>
<body><input type="button" value="+" onclick="bigger();"/><p>jQuery框架是轻重级的js框架</p><p>jQuery对DOM操作提供了支持</p><p>jQuery对动画提供了支持</p><input value="jQuery对动画提供了支持"/>
</body>
</html>
<!DOCTYPE html>
<html>
<head lang="en"><meta charset="UTF-8"><title>jQuery选择器</title><script src="js/jquery-3.4.1.js"></script><script>//传入的this就是img对象function chg(img){console.log(1);//如果img的属性的值是218console.log($(img));if($(img).width()==218){$(img).width("250px").height("250px");}else{$(img).width("218px").height("218px");}}</script>
</head>
<body>
<img src="img/images/01.jpg" width="218px" height="218px"onclick="chg(this);"/>
</body>
</html>
<!DOCTYPE html>
<html>
<head lang="en"><meta charset="UTF-8"><title>jQuery选择器</title><script src="js/jquery-3.4.1.js"></script><script>//当页面加载完成后自动执行$(function(){//1.id选择器console.log($("#nb"));//2.class选择器console.log(".city");//以上都是基本选择器//层次选择器,通过DOM元素之间的层次关系取特定元素console.log($("#nb+"));//4.过滤选择器//4.1基本过滤//获取第一个liconsole.log($("li:first"));//获取下标奇数的liconsole.log($("li:odd"))//获取前四个liconsole.log($("li:lt(4)"));//选取除了id为nb的liconsole.log($("li:not(#nb)"));//4.2内容过滤//选取带 京 的liconsole.log($("li:contains('京')"));//4.3可见性过滤//获取所有隐藏的元素console.log($("li:hidden"));//4.4属性过滤//获取所有带id属性的liconsole.log($("li[id]"));//4.5状态过滤//选择不可用状态的inputconsole.log($("input:disabled"));//选中只读的inputconsole.log($("input:read-only"));//选中checked的状态console.log($("input:checked"));//5.表单选择器//选中input标签中的属性为radio的标签console.log($("input:radio"));});</script>
</head>
<body>
<ul><li >北京</li><li class="city">上海</li><li class="city">广州</li><li>深圳</li><li id="nb">宁波</li><li class="city">厦门</li><li style="display: none">东莞</li><li>南京</li>
</ul>
<p>账号:<input type="text" disabled/>
</p>
<p>账号:<input type="password" readonly/>
</p>
<p><input type="radio" name="sex"/>男<input type="radio" name="sex"/>女
</p>
</body>
</html>

篇章

上一篇:JavaScript知识点3
下一篇:JavaScript知识点5-jQuery函数库

JavaScript知识点4相关推荐

  1. 呕心沥血 JavaScript知识点梳理大全,超详细 建议收藏!!!

    呕心沥血 JavaScript知识点梳理大全,超详细 建议收藏!!! ✴️大家好,我是王同学,爆肝三天三夜王同学把JavaScript 知识点梳理了一遍,文章没有一点套路,只有满满的干货 ✴️如果对你 ...

  2. JavaScript知识点9-案例大全

    文章目录 1.购物车综合案例JQuery版本 2.购物车综合案例JavaScript版本 3.学子商城 public.css index.css 主页面 4.猜数字 篇章 1.购物车综合案例JQuer ...

  3. 小白学小程序需要的JavaScript知识点

    小白学微信小程序需要的JavaScript知识点 文章目录 小白学微信小程序需要的JavaScript知识点 1 js数据类型 Number 字符串 布尔值 数组 对象 null和undefined ...

  4. javascript知识点_一点点JavaScript知识是第1部分很危险的事情

    javascript知识点 几乎是一个数据库的奇怪故事 (The Strange Tale of the Almost-a-Database) 这不是教程,这是一个警告性的故事. (This is n ...

  5. JavaScript知识点8

    文章目录 1.事件绑定 2.事件 3.查找3个div 4.使用hover 5.百度一下 6.jQuery动画函数--显示隐藏动画 7.精简显示品牌 8.框架/js库 篇章 1.事件绑定 <!DO ...

  6. JavaScript知识点归纳之简介

    简介: 参照学习菜鸟教程上例子所做本JavaScript知识点归纳之XXX. 1.JavaScript直接写入HTML输出流: <script> document.write(" ...

  7. javaScript知识点和实例

    javaScript知识点和实例 一.最终显示效果:点击红色按钮,会有视屏弹出 并带有遮罩层 点击黄色区域可以关闭视频 并回到最初的状态. 页面主要代码:main中主要包含一个a,控制显示的按钮.设置 ...

  8. javascript php 性能,JavaScript知识点总结之如何提高性能_javascript技巧

    JavaScript的性能问题不容小觑,这就需要我们开发人员在编写JavaScript程序时多注意一些细节,本文非常详细的介绍了一下JavaScript性能优化方面的知识点,绝对是干货. 先给大家巩固 ...

  9. 面试容易问的 JavaScript 知识点,你知道几个?

    你是否也遇到这样的问题,学JavaScript不知从哪下手?学了一半不知道自己技巧掌握的如何?或者学完了想去面试,但是不知道自己掌握的知识是否熟练?今天达妹为各位准备了一些JavaScript面试技术 ...

最新文章

  1. 模板 - 最小斯坦纳树
  2. html5 子元素选择器,CSS子元素选择器 - HTML电子邮件
  3. JavaScript中的作用域,闭包和上下文
  4. 窗体控件随窗体大小改变(仍有不足)
  5. angular判断两个对象值是否相等,包含对象深层判断,深拷贝的两个对象
  6. java osgi web开发_在Tomcat中使用Java Web应用程序的OSGi软件包
  7. 让电脑清空数据或死机,一定要执行才舒服
  8. Android 完整地操作数据库--日记本实例
  9. 送书 | 新书《Python科学计算入门与实战》
  10. H3CSE园区-RSTP
  11. informatica学习1-数据仓库,ETL,数据仓库工具Informatica介绍
  12. vb/vb.net开发技巧荟萃(九)
  13. 51单片机定时器时间计算
  14. 4星|《激荡十年,水大鱼大》:过去十年间国内商业简史
  15. rmmod命令卸载驱动后重启后为什么驱动还在? 安排!
  16. 常用的Git代码托管平台
  17. Python绘制正弦、余弦函数图像
  18. Ubuntu 10.04内核源码树的编译和安装
  19. LTE学习:PHICH
  20. 《python灰帽子》笔记--构建自己的调试器

热门文章

  1. 解决Android下QtQuick.LocalStorage和腾讯开放平台组件冲突问题
  2. Problem D: 零起点学算法24——判断奇偶数
  3. python中如何移动图形工作站_六招教你用Python分分钟构建好玩的深度学习应用
  4. mysql binlog 记录_MYSQL binlog 日志内容查看
  5. wfGo C# winform 围棋系统 简介
  6. OWOD训练运行教程
  7. 公交地铁线路查询系统(app)
  8. (二)Spring自动装配
  9. Spring之自动装配
  10. 机器人测钢卷直径_自动拆钢卷捆带装置的制作方法