前端小知识点(2):普通字符串和new String有什么区别

目录

一、其实不仅字符串

二、那么到底为什么?

三、代码案例

四、运行结果


一、其实不仅字符串

var str = 'abc';

typeof str ===> string //他不是对象,可以有方法或者属性

var num = 123;  //他不是对象,可以有方法或者属性

typeof num ===> number  //他不是对象,可以有方法或者属性

当然还有很有很多...

我们知道,String,Number,在JS中是基本类型

二、那么到底为什么?

引言:基本类型是存储在栈(stack)内存中的,而引用类型,对象(object)是存储在堆中的。但是为什么栈内存的可以也可以有方法和属性呢?

console.log(str.indexOf === String.prototype.indexOf) //true

str 又 不属于String 却拥有 String 的方法?????

因为:这是JS中的设计。

原始资料类型的方法与属性是"借"来的

所以原始资料类型是可以向 new String() 或者 new Number() 借来所有的方法。但是自己本身却没有属性和方法。

三、代码案例

var str1 = '123';
var str2 = new String('123');console.log( typeof str1 ); //string
console.log( typeof str2 ); //objectconsole.log( str1.slice(-1) );
console.log( str2.slice(-1) );console.log(str1.indexOf === String.prototype.indexOf);var num1 = 123;
var num2 = new Number(123);

四、运行结果

 

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

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

相关文章

Linux 管理登陆的用户/查看/剔除

Linux是多用户操作系统,支持多用户同时在线,支持对登陆用户的管理:查看与剔除等。 一、查看在线用户命令 命令: w 二、查看登录记录命令 命令 last 三、剔除在线用户命令 命令:sudo pkill -kill -t usr 四、pkill…

Windows下 maven3.0.4的安装步骤+maven配置本地仓库

简单讲下maven的安装步骤: 1.在安装maven之前,先确保已经安装JDK1.6及以上版本,并且配置好环境变量。 2.下载maven3,最新版本是Maven3.0.4 ,下载地址:http://maven.apache.org/download.html 下载apache…

前端小知识点(3):JavaScript 单线程

目录 一、为什么 JavaScript 是单线程? 二、JavaScript是单线程,怎样执行异步的代码? 三、事件循环机制 四、代码1 五、结果1 六、代码2 七、结果2 一、为什么 JavaScript 是单线程? JavaScript 语言的一大特点就是单线程…

Linux安装samba的过程,Samba安装全过程

对于linux与windows共享,和平共处,我们可以用Samba软件Samba是一套免费的开源软件,可以在linux或其他类unix操作系统上实现windows域控制器,文件服务,打印服务等。Samba实现了windows系统所使用的核心网络协议&#xf…

树莓派UART串口编程--使用wiringPi库-C开发【2-修改驱动】

一、前言 上一篇博文记录了使用wiringPi提供的串口驱动wiringSerial.c wiringSerial.h,并基于该驱动对串口进行简单的通信,测试中发现该串口的驱动比较简单,接收数据会存在分包的现象,另外一点是串口配置只提供了波特率参数配置&…

【转】全面理解javascript的arguments,callee,caller,call,apply概念(修改版)

(注:在看到大家如此关注JS里头的这几个对象,我试着把原文再修改一下,力求能再详细的阐明个中意义 2007-05-21)在提到上述的概念之前,首先想说说javascript中函数的隐含参数:arguments Arguments 该对象代表…

windows延缓写入失败相关问题解决办法

From: http://www.ggsafe.com/news/1324547234222.shtml 我们在使用电脑时,有时在不正常关机后电脑会出现这样那样的问题。windows延缓写入失败就是其中一个,很多网友在互联网上发帖求助windows延缓写入失败怎么办,出现这种情况一般都是由于电…

wince linux 性能,wince remote call profiler(性能分析)

如何使用1 建立工程,CPU类型必须于目标机型一致如ARMV4I,所以选择WCE Application,然后选择empty project2 project settings 中,link页,Object/library modules中添加 cecap.lib(前面有空格),Ingore libraries中添加,libc.lib(前面有逗号).C/C页Project Options最后添加 /call…

前端小知识点(4):JS 运行机制和存储

目录 被忽视的内存管理 JS工作原理 JS代码如何运行 JavaScript内存的生命周期 栈内存、堆内存 代码案例 运行结果 被忽视的内存管理 JavaScript不像C、C等语言——程序员必须通过调用内存管理接口,比如 malloc()和free(),自己手动分配和释放内存。…

Linux ps aux查看进程

一、ps 命令 ps 是Process Status的缩写,用于查看进程状态,ps 可以显示linux系统的所有进程信息。 用法: ps a 显示现行终端机下的所有程序,包括其他用户的程序。ps -A 显示所有程序。 ps c 列出程序时,显示每个程序…

2010数据库SQL Server 盘点

让我们一起来盘点一下2010数据库SQL Server 发布了那些给力的新品。 1. 微软发布SQL Server 2008 R2 微软公司于2010年4月21日宣布推出Microsoft SQL Server 2008 R2。SQL Server 2008 R2已经可以看作是本年度的一次重量级发布。微软公司努力将SQL Server打造为一个信息平台&am…

linux下有四个作业优先级,第一次作业:对Linux系统分析

一.操作系统的组成1.无进程的内核在一些操作系统当中操作系统的内核在所有的进程之外执行。也就是说操作系统有自己的内存区域和系统栈,当进程发生 中断,陷阱或系统调用时,此进程的上下文环境被保存在系统栈中,控制权转移给内…

前端小知识点(6):听了好多闭包,这次可能最懂

目录 一、作用域和作用域链 二、闭包 三、无意间共享环境[可以通过闭包解决] 代码一 结果一 代码二 结果二 代码三 结果三 一、作用域和作用域链 当函数声明的时候,函数会通过内部属性[scope]来记录创建范围 二、闭包 什么是闭包:闭包是一个函数加…

Linux的Qt编译出现:-1: error: cannot find -lGL问题的解决方法

Qt是支持跨平台的C图形用户界面应用程序开发框架,在一个平台上开发好应用程序可以在多个平台方便移植。 在将windows平台上开发的Qt界面程序移植到Linux Ubuntu系统中,在构建项目时出现以下编译问题: error: cannot find -lGL。 即&#xf…

git rebase原理(转)

git rebase 不会取回代码 要用git fetch先取回, git rebase 是合并代码。 (1)首先用git fetch返回服务器上的代码 (2)首先用git rebase origin/master 合并 (3)如果发生冲突了会提示&#xff0c…

前端小知识点(7):正则前瞻

目录 一、js中的正则表达式,只有前瞻没有后顾 正向前瞻:(?) 》匹配符合的 代码1 结果1 代码2 结果2 一、js中的正则表达式,只有前瞻没有后顾 正向前瞻:(?) 》匹配符合的 负向前瞻:(?!) 》匹配不…

c语言编译生成cpp,C语言的编译过程

编译: 编译程序读取源程序(字符流),对之进行词法和语法的分析,将高级语言指令转换为功能等效的汇编代码,再由汇编程序转换为机器语言,并且按照操作系统对可执行文件格式的要求链接生成可执行程序。流程:C源…

设置启用树莓派的HDMI显示

树莓派所有的启动初始化都是在config.txt中完成的,因此,若插入HDMI树莓派没有显示桌面,则是没有配置HDMI。 首先在找到config.txt,两种方法: 第一种方法,将SD卡取出,用读卡器在windows上找到&…

前端小知识点(8):作者为什么设计原型

目录 一、从古代说起 二、Brendan Eich的选择 三、new运算符的缺点 四、prototype属性的引入 五、总结 六代码部分 一、从古代说起 要理解Javascript的设计思想,必须从它的诞生说起。 1994年,网景公司(Netscape)发布了Navi…

前端小知识点(9):函数和对象之间的关系

目录 函数与对象之间的关系 代码演示 运行结果 函数与对象之间的关系 函数 有什么 : 函数也是对象 函数有:prototype 对象 有什么 对象:__proto__ 原型对象里面有什么:constructor 代码演示 //fun是一个函数&#xf…