javascript面试题以及对所涉及到的知识点的总结

前言

  这几天将js方面的知识系统的回顾了一遍,但是当尝试去做一些面试题时觉得解决问题的能力以及效率还是有所欠缺,在这里特意记录一下所做的面试题并总结所涉及到的相关知识点。

一、面试题、答案以及总结

1、截取字符串abcdefg的efg

var str="abcdefg";方法一:
str.substr(4,3);//第二个参数可选,如果在这里省略,截取的字符串也将延伸到最后

方法二:str.substring(4);//该方法有两个参数,第二个参数为可选,由于这种方法截取字符串时将不包括结束索引位置的字符,因此在此处省略了第二个参数 

总结:截取字符串的方法

2、 判断一个字符串中出现次数最多的字符,统计这个次数

        var strobj = {};var str = "adsssweasxfccadddd";for (var i = 0; i < str.length; i++) {if (strobj[str.charAt(i)] != undefined) {strobj[str.charAt(i)] += 1;}else {strobj[str.charAt(i)] = 1;}}       var MaxNum = 0;//出现的次数var c;//记录出现次数最多的字符for (var s in strobj) {if (strobj[s] > MaxNum) {MaxNum = strobj[s];c = s;}}alert("出现次数最多的字符为:" + c + ",最大次数为:" + MaxNum);

总结:

(1)、字符串

  js中字符串最常用的属性就是length,它表示的是字符串中字符的个数。还有很多方法,比如可以通过charAt(索引)来访问某个索引处的字符。

(2)、for in 循环

  可以用来扩列对象的属性

(3)、自定义对象

  通过字面量的方式来创建自定义对象:var obj={};

(4)、undefined

  有一下几种情况会返回undefined值:

  • 使用未申明的变量
  • 使用一个已经声明但没有复制的变量
  • 使用的对象不存在

3、规避javascript多人开发函数重名问题(还没怎么用到过)

  可以通过命名空间、封闭空间等来解决。

 

4、javascript面向对象中继承实现;

 

 

5、编写一个方法 求一个字符串的字节长度;

        var str = "aa字符串";/*方法一:通过ASCII码来实现var CLength=0;for (var i=0; i < str.length;i++){if(str.charCodeAt(i)>255){CLength++;//debugger;}        }CLength=CLength+str.length;alert("\'" + str + "\'字符串的字节长度为:" + CLength);*///方法二:通过正则表达式来判断是否为汉字var CLength = 0;var re = /[\u4e00-\u9fa5]/;for (var i = 0; i < str.length; i++) {if (re.test(str.charAt(i))) {CLength++;//debugger;
            }}CLength = CLength+str.length;alert("\'" + str + "\'字符串的字节长度为:" + CLength);

总结:

  这里主要是考察了如何判断字符是汉字,上面的代码中列出了两种方式:1、通过字符串的charCodeAt(索引)来获取字符的ASCII码从而来判断是否是汉字;2、通过正则表达式方式来判断;

 

6、编写一个方法 去掉一个数组的重复元素

var Arr = [1, 2, 3, 1, 43, 12, 12, 1,3,5,'s','a'];var obj = {};//用于存储数组Arr中没有重复的值var res = [];//处理之后的数组var j = 0;//检验该数组元素是否存在于obj中function Check(ArrValue) {if (obj[ArrValue] != undefined) {return true;}else                return false;}//处理数组function ControlArr(Arr) {for (var i = 0; i < Arr.length; i++) {//将数组元素值拿到obj中验证if (!Check(Arr[i])) {obj[Arr[i]] = Arr[i];}}//debugger;for (var r in obj) {res[j] = r;j++;}return res;}alert(ControlArr(Arr));

7、this关键字的用法 

8、js中的深浅克隆

9、javascript中的ajax请求  

10、 闭包

 

  

 

转载于:https://www.cnblogs.com/YanYongSong/p/5291110.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/396611.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

十代主板改win7_技嘉B460主板UEFI+GPT装win7|10代CPU装win7 Bios设置

随着英特尔十代酷睿处理器的全面上市,针对主流用户的B460平台成为了大众主要关注的目标。作为国际一线板卡品牌的技嘉科技针对十代酷睿的特点,推出了B460主板。这块主板装win7、win10都可以,但是在装win7的过程中USB设备不能使用(本站支持最新的B460/Z490等新主板驱动),需要…

Java swing中的keyListener使用事例

最近在学习Java swing&#xff0c;写了一个域内聊天室&#xff0c;实现用户登录ip,端口号之后&#xff0c;进入聊天窗口聊天&#xff1a; 通过菜单条增加了几个功能&#xff0c;边框&#xff0c;字体&#xff0c;颜色和文件传输。风格里的样式都可以通过自己选择来设置。 介绍以…

「前端」History API与浏览器历史堆栈管理

本文由尚妆前端开发工程师欲休撰写 本文发表于尚妆博客&#xff0c;欢迎订阅&#xff01; 移动端开发在某些场景中有着特殊需求&#xff0c;如为了提高用户体验和加快响应速度&#xff0c;常常在部分工程采用SPA架构。传统的单页应用基于url的hash值进行路由&#xff0c;这种实…

Andrew Ng机器学习(一):线性回归

1.什么是线性回归&#xff1f; 用线性关系去拟合输入和输出。 设输入为x&#xff0c;则输出yaxb。 对于多元的情况yb1a1x1a2x2...anxn。 用θ表示系数&#xff0c;可以写作&#xff1a; 其中&#xff0c;x01。 2.线性回归有什么用&#xff1f; 对于连续输入和输出的问题&#x…

c++虚析构函数

1.为什么基类的析构函数是虚函数&#xff1f; 在实现多态时&#xff0c;当用基类操作派生类&#xff0c;在析构时防止只析构基类而不析构派生类的状况发生。 下面转自网络&#xff1a;源地址 http://blog.sina.com.cn/s/blog_7c773cc50100y9hz.html a.第一段代码 #include<i…

ICMP(Internet Control Message Protocol)网际控制报文协议初识

ICMP是&#xff08;Internet Control Message Protocol&#xff09;Internet控制报文协议。它是TCP/IP协议族的一个子协议&#xff0c;用于在IP主机、路由器之间传递控制消息。控制消息是指网络通不通、主机是否可达、路由是否可用等网络本身的消息。这些控制消息虽然并不传输用…

Linux设置RSA密钥登录

一、怎么实现双向免密登录 前提 所有服务器/etc/ssh/sshd_config文件的以下三行未被注释 RSAAuthentication yesPubkeyAuthentication yesAuthorizedKeysFile .ssh/authorized_keys举例&#xff1a; 两台服务器&#xff1a;192.168.100.134 192.168.1.140免密码登录是分用户的…

python面向对象__str__和__repr__方法

__str__方法 class Animal:def __init__(self,name,color):self.namenameself.colorcolordef __str__(self):resself.name的颜色是self.colorreturn res batAnimal(蝙蝠,黑色) print(蝙蝠的特征:%s % bat) # 蝙蝠的特征:蝙蝠的颜色是黑色 对象输出或者打印就会执行__str__方法…

函数sprintf真好用

描述&#xff1a;C 库函数 int sprintf(char *str, const char *format, ...) 发送格式化输出到 str 所指向的字符串。 声明&#xff1a; int sprintf(char *str, const char *format, ...) 参数&#xff1a; str -- 这是指向一个字符数组的指针&#xff0c;该数组存储了 C 字符…

oracle 删除主键_大数据量删除的思考 4

译者 汤健 沃趣科技数据库技术专家出品 沃趣科技在本系列的前一期文章中&#xff0c;我制作了一些图&#xff0c;突出显示了按表扫描执行大量删除操作和按索引范围扫描执行大量删除之间的主要区别。根据所涉及的数据模式&#xff0c;选择正确的策略可能对随机I/Os的数量、生…

redis 持久化 + 主从复制+ 集群

2019独角兽企业重金招聘Python工程师标准>>> 一、 Linux 下的 Redis 安装 && 启动 && 关闭 && 卸载 http://blog.csdn.net/zgf19930504/article/details/51850594 注&#xff1a;设置 redis.conf bind***.***.*.(127.0.0.1) redis启动&…

怎么运行c语言_C语言 原来是这样调用硬件的

大家都知道我们可以使用C语言写一段程序来控制硬件工作&#xff0c;但你知道其工作原理吗&#xff1f;网友北极C语言在实际运行中&#xff0c;都是以汇编指令的方式运行的&#xff0c;由编译器把C语言编译成汇编指令&#xff0c;CPU直接执行汇编指令。所以这个问题就变成&#…

四、元祖、字典

一、元祖(tuple)&#xff1a;tu(11,"hello",(0,1),[11,"111"],33,) 元祖的特点&#xff1a;元祖中一级元素不可被修改&#xff0c;不能被增加或删除&#xff0c;多级元素可以被修改&#xff0c;一般写元祖的时候&#xff0c;推荐在后面添加逗号“&#xff…

PHP编程效率的20个要点

用单引号代替双引号来包含字符串&#xff0c;这样做会更快一些。因为PHP会在双引号包围的字符串中搜寻变量&#xff0c;单引号则 不会&#xff0c;注意&#xff1a;只有echo能这么做&#xff0c;它是一种可以把多个字符串当作参数的“函数”(译注&#xff1a;PHP手册中说echo是…

ubuntu运行python ide_打造vim中的python IDE

首先先介绍几个常用的插件&#xff1a;1&#xff0c;ctags和taglist&#xff0c;这个大家估计都很常用&#xff0c;在ubuntu下只要安装exuberant-ctags即可啦&#xff0c;另外tagbar支持面向对象语言的展示" toggle Tagbar displaymap :TagbarToggle" autofocus on T…

更新和插入的并发问题_mysql经典面试题:如何读写分离?主从原理是啥?同步的延时问题...

面试题你有没有做 MySQL 读写分离&#xff1f;如何实现 MySQL 的读写分离&#xff1f;MySQL 主从复制原理的是啥&#xff1f;如何解决 MySQL 主从同步的延时问题&#xff1f;考点分析高并发这个阶段&#xff0c;肯定是需要做读写分离的&#xff0c;啥意思&#xff1f;因为实际上…

php实现一个简单的四则运算计算器

php实现一个简单的四则运算计算器&#xff08;还不支持括号的优先级&#xff09;。利用栈这种数据结构来计算表达式很赞。 这里可以使用栈的结构&#xff0c;由于php的数组“天然”就有栈的特性&#xff0c;这里直接就利用了数组。当然可以使用栈结构写&#xff0c;道理一样的。…

Tcp与Ip协议的客户端和服务器编程

Tcp与Ip协议的客户端和服务器编程 本文就TCP和Ip协议的客户端和服务器分别进行编程&#xff0c;实现了客户端和服务端进行通信的功能&#xff0c;服务端对多个客户端进行监听&#xff0c;并能与多个客户端通信。 服务器端代码如下&#xff1a; using System; using System.Coll…

maven建立webapp项目时显示Cannot change version of project facet Dynamic web module to 2.5

为什么80%的码农都做不了架构师&#xff1f;>>> 网上查了很多东西都没啥用&#xff0c;其实直接把这段代码加到web.xml头部&#xff0c;自然就不报错了 <?xml version"1.0" encoding"UTF-8"?> <web-app xmlns:xsi"http://www.…

python数据结构算法 北京大学_北京大学公开课《数据结构与算法Python版》

之前我分享过一个数据结构与算法的课程&#xff0c;很多小伙伴私信我问有没有Python版。看了一些公开课后&#xff0c;今天特向大家推荐北京大学的这门课程&#xff1a;《数据结构与算法Python版》。课程概述很多同学想要转行机器学习&#xff0c;也确实掌握了一些机器学习模型…