JavaScript—在变量中存储元素的.textContent并在函数中访问它

JavaScript—在变量中存储元素的.textContent并在函数中访问它,javascript,Javascript,我想做两个简单的函数。我有一个带有文本和图像的div。我想在mouseover上更改div元素中的文本,并在mouseout上更改回它 <body> <div id = "image"> Hover over an image below to display here. </div> <img class = "preview" alt = "Styling with a Bandana&qu

我想做两个简单的函数。我有一个带有文本和图像的div。我想在mouseover上更改div元素中的文本,并在mouseout上更改回它

<body>
<div id = "image">
    Hover over an image below to display here.
</div>

<img class = "preview" alt = "Styling with a Bandana" src = "https://s3-us-west-2.amazonaws.com/s.cdpn.io/389177/bacon.jpg" onmouseover = "upDate(this)" onmouseout = "unDo()">
鼠标悬停时,我正在应用此功能更改文本,效果良好:

function upDate(previewPic){
    var text = previewPic.getAttribute ("alt");
    document.getElementById('image').innerHTML = text;}
在mouseout上,我要应用此功能:

function unDo(){
        document.getElementById("image").innerHTML = x;}
or     
        document.getElementById("image").innerHTML.textContent = x;

但这两者都不起作用,有人能告诉我,我如何存储div的文本,并在mouseout上再次使用它吗?我可以在mouseover上更改文本,但我不知道如何在mouseout上更改它。谢谢你的回答

你的代码对我有效,你可以在这里查看:
.innerHTML.textContent
没有意义它对我无效,可能是一些愚蠢的简单错误。。我把我的整个html和js代码放在这里:我看到它在这个JSFIDLE编辑器中工作,但它在我的PC上不工作,我在鼠标下移动
标记到底部,在
上方。我的猜测是,当
var x=
行运行时,
#image
还没有准备好,是的!谢谢你,哈桑。所以总的来说,我应该把我的想法放在最下面?看起来不太好…:)
function unDo(){
        document.getElementById("image").innerHTML = x;}
or     
        document.getElementById("image").innerHTML.textContent = x;