企业微信解析网址
- 在企业微信发送一个链接时,会自动解析网址,带上标题和图片。标题一般取页面中的title标签,图片取遇到的第一个图片。
- 我以为通过document.title修改了标题,那么就会被解析到,实际上只解析到了默认的title标签中的内容。也就是说等到了页面再去修改标题是来不及的,企业微信等不到这个时候就已经去拿title标签的内容了。所以说客户端渲染的项目要想在每个页面设置的单独title能够被企业微信解析到,这个是无法实现的。
- 但是服务端渲染的项目就可以,因为服务端已经把页面的标题修改逻辑在服务端执行完毕了,返回给浏览器的就是修改好title的页面。但是直接通过document.title也是不行的,必须通过angular提供的plateform/browser模块中的tilte服务去修改标题。
励志不写重复代码,决定明天把今天写的代码再封装一下。
数组中存储的是对象时,存储的到底是什么?
- 数组中如果存储的是对象,那么存储的实际上是这个对象的地址。
// 思考这段代码,原数组中的值会不会变。
const a = [{t:1},{t:2},{t:3}];
a.every(e=>{
e.t=4;
return true;
})
console.log(a)
答案是原数组变了
// 再思考这段代码,原数组中的值会不会变。
const a = [{t:1},{t:2},{t:3}];
a.every(e=>{
e = {a:1};
return true;
})
console.log(a)
答案是没变,因为遍历数组时,e拿到的其实对象的地址,所以它能够访问数组中的元素,但是e={a:1}
这种操作实际上是让e指向了一个新的地址。但是数组中的每项元素对应的对象地址并没有改变。