为什么即使对象未在 javascript 代码中定义,此代码也能正常工作
Why does this code work even though the object is not defined in the javascript code?
我正在使用JSLint,它说:"matte_canvas"没有定义。显然,在我的 javascript 代码中,我没有定义"matte_canvas",但是,它确实在控制台中输出了 canvas 元素。
这是我的代码:
.HTML:
<canvas id="matte_canvas" width="50" height="50" style="background-color:blue;"></canvas>
Javascript:
console.log(matte_canvas);
这是在JSFiddle上:http://jsfiddle.net/allisonc/rqo5a417/
有人可以向我解释一下它是如何工作的吗?
>id
也是全局变量(如果没有为它们分配其他值)。不要依赖这个。这也适用于某些元素的 name
属性:a
、applet
、area
、embed
、form
、frameset
、img
和 object
。
alert(window.matte_canvas);
更多信息: https://html.spec.whatwg.org/multipage/nav-history-apis.html#named-access-on-the-window-object
相关文章:
- 为什么不是'我的函数在解析云代码中工作吗?当我在Angular和Express中测试时,它是有效的
- 谷歌地图Api和JS代码不工作
- addEventListener的Javascript代码不工作!?(单击时打开放大的img)
- 为什么当async标志设置为false时,xmlhttprequest中的代码可以工作,而当它设置为true时却不能工作
- AngularJS代码不工作
- Angular2 http.get代码不工作
- 我可以'不要让这几行简单的代码正常工作,也不知道为什么
- 没有错误消息提示,但代码无法工作
- 当我尝试在jsFiddle中暂停并播放时,我的代码可以工作,但它不起作用;我的html页面不起作用
- Fancybox图像点击可以独立工作,但不能与我的其他代码一起工作
- HTML代码不工作<br>线
- 以下下划线.js代码如何工作
- 添加嵌套视图后代码停止工作
- JavaScript 的 bind() with currying.这些代码如何工作
- JavaScript 在控制台中工作,而不是在代码中工作 new Date(parseInt(
) - 无法让 HTML/PHP/JavaScript 幻灯片代码正常工作
- 以下angularJS应用程序的HTML代码如何工作并在网页上显示隐藏的文本
- 将 jQuery 库升级到版本 1.10 后,代码停止工作
- 不能使两个简单的JS代码同时工作
- 谷歌分析通用事件跟踪代码不工作