为什么js写入模板字符串里面的ul的样式不能显示的原因

JavaScript08

为什么js写入模板字符串里面的ul的样式不能显示的原因,第1张

模板字符串里面只能输出一个字符串,所以即使把js写入模板字符串里面,也不能把其中的样式显示出来。为了让js中的样式能够显示出来,我们应该在模板字符串外面使用JavaScript的样式属性(style)来应用到这些样式。

js中的基础类型有6种

5种基础类型:undefined null String Number Boolean

1中引用类型:Object

基础类型的string有如下定义方式:

这三种方式有什么区别吗?

str1、str2是普通的字符串,str3是个对象?什么原因呢?

用 typeof 验证一下

用 instanceof 验证一下

可以看出 str3 确确实实是个String对象了

再来看个有意思的事,如果给String加上自定义方法和属性呢?

虽然 str1、str2不是对象,但可以用String上的方法和属性

再看,如果直接给str1、str2定义方法和属性呢?

可以看出str1、str2是不能定义自己的方法和属性的,而str3可以

这就能看出 js 的神奇部分了,什么原理呢?

来看包装对象和原始资料类型

上面看到的str1、str2即为原始资料类型,str3为包装对象,通过typeof可以看出

但str1、str2不能自己定义属性和方法,却可以用String的属性和方法

总结一下

1、第一种和第二种方法定义出来的是原始资料类型,并储存于栈中,并向包装对象(new ..())借来方法和属性.

2、第三种是 包装对象,栈中储存堆指针,堆中储存内容。

关于堆、栈、指针的问题,咱们继续学习